4.2 类及类的成员,创建类的对象
一、设计类,其实就是设计类的成员
属性 = 成员变量 = field = 域、字段
方法 = 成员方法 = 函数 = method
创建类的对象 = 类的实例化 = 实例化类
二、类和对象的使用(面向对象思想落地的实现):
1.创建类,设计类的成员
2.创建类的对象
3.通过“对象.属性”或“对象.方法”调用对象的结构
三、如果创建了一个类的多个对象,则每个对象都独立的拥有一套类的属性。(非static的)
意味着:如果我们修改一个对象的属性a,则不影响另外一个对象属性a的值。
四、对象的内存解析
五、匿名对象
我们也可以不定义对象的句柄,而直接调用这个对象的方法。这样的对象叫做匿名对象。
如: new Person().shout();
使用情况:
如果对一个对象只需要进行一次方法调用,那么就可以使用匿名对象。
我们经常将匿名对象作为实参传递给一个 方法 调用。
//测试类
public class PersonTest {
public static void main(String[] args) {
//创建Person类的对象
Person p1 = new Person();
//调用对象的结构:
//调用属性:对象.属性
p1.name = "Tom";
p1.isMale = true;
System.out.println(p1.name);
//调用方法:对象.方法
p1.eat();
p1.sleep();
p1.talk("chinese");
Person p2 = new Person();
//调用属性:对象.属性
System.out.println(p2.name);
System.out.println(p2.isMale);
Person p3 = p1;//p3和p1指向同一个地址
System.out.println(p3.name);//Tom
p3.age = 10;
System.out.println(p1.age);//10
}
}
//创建类,设计类的成员
class Person {
//属性
String name;
int age = 1;
boolean isMale;
//方法
public void eat() {
System.out.println("人可以吃饭!");
}
public void sleep() {
System.out.println("人可以睡觉!");
}
public void talk(String language) {
System.out.println("人可以说话,使用的是:" + language);
}
}