疯狂的Java第五章


Java是面向对象的程序设计语言,类是面向对象的重要内容,可以吧类当成一种自定义类型,可以使用类来定义 变量,这种类的变量统称为引用变量,也就是说,所有类是引用类型。

  • 定义类

在面向对象的程序设计过程中两个重要的概念 ,类和对象
其中类是一批对象的抽象可以把类理解成某种概念;对象才是一个具体实现的实体,从这个意义上来看
日常所见的人,其实都是人的实例,而不是人类
类和对象是面向对象的核心
static是一个特殊的关键字他可用于修饰方法、成员变量等成员,static是静态方法 静态成员不能直接访问非晶态成员。
static的真正作用是用于区分成员变量,方法内部类,初始化块成员,有static修饰的成员属于类本身,没有static修饰的成员属于该类的实例

下面程序定义一个类Person

疯狂的Java第五章

 

  • 对象产生和使用

创建对象的根本途径是构造器,通过new关键字来调用某个类的构造器即可创建初长成

public class PersonTest {
    public static void main(String[] args) {
        //使用peron类定义一个person类型的变量
        Person p;
        //通过new关键字调用person类的构造器,返回一个person实例
        //将该person实例赋给p变量
        p  = new Person();
        //上面的代码 也可以简写成如下代码形式;
       // Person p = new Person();
        //创建对象之后,接下来即可以使用对象了,Java的对象大致有如下作用;
        //1.访问对象的实例变量。2.调用对象的方法。如果访问权限允许,
        // 类里定义的方法和成员变量都可以通过 类或实例来调用
        //访问p的name实体变量,直接为该变量赋值
        p.name = "李刚";
        //调用p的say()方法,声明say()方法时定义了一个形参,
        //调用该方法必须为形参指定一个值
        p.say("java语言很简单,学习很容易!");
        //直接输出p的name实例变量,将输出李刚
        System.out.println(p.name);
        //大部分的时候,定义一个类就是为了重复创建该类的实例,
        //类不是一种具体存在的实例才是具体存在的


    
    }
}
5.13
对象引用和指针
5.14对象的this引用
this关键词总是指向该方法的对象。两种情形
 1.构造器中引用该构造器正在初始化的对象
 2.在方法中引用调用该方法的对象。
this关键字最大的作用就是让类中一个方法,访问该类里的另一个方法或实例变量。
public class Dog {
  
    //定义一个jump方法
    public void jump(){
        System.out.println("正在执行jump()方法");
    }
    //定义一个run()方法需要借助jump()方法
    public void run(){
        Dog d = new Dog();
        d.jump();
        System.out.println("正在执行run方法");
    }

    public static void main(String[] args) {
        //创建Dog对象
        Dog dog = new Dog();
        //调用Dog对象run()方法
        dog.run();
    }
}
使用this代表该构造器正在初始化的对象

疯狂的Java第五章

当this作为对象默认引用使用时,程序可以像访问普通引用变量一样来访问这个this引用,甚至把this当做返回值 看下面程序

疯狂的Java第五章