Ⅰ.面向对象的三大特征:封装型,继承性,多态性 (可能有些还会说有抽象性)
Ⅱ.类(class)和对象(object)是面向对象程序设计方法中最核心的概念。
Ⅲ.面向对象的两要素:
1. 类:对一类事物的描述,是抽象的,概念上的定义(一个类可对应多个对象)
2. 对象:是实际存在的该类事物的每个个体,因而也成为实例(instance)
>面向对象程序设计的重点是类的设计
>设计类,就是设计类的成员
Ⅳ.Java类及类的成员
1.Java的两大要素:类,对象(实际是由类派生的)
2.类的成员:属性,方法,构造器;代码块,内部类
一,设计类,就是设计类的成员
1.类是由数据成员与函数成员封装而成的,数据成员表示类的属性,函数成员(即程序 代码)表示类的行为。可说:类描述了对象的属性和对象的行为。
2. 属性 = 成员变量 = field(英文) = 域,字段 这几个名词描述的是同一个 事物
方法(Java称封装于类内的函数为“函数”) = 成员方法 = 函数(在c语言中的 叫法) = method(英文) 这几个名词描述的是同一个事物
3.创建类的对象 = 类的实例化 = 实例化类
二,类和对象的使用(面向对象思想对象的实现)
1.创建类,设计类的成员
2.创建类的对象
3.通过“对象 .属性”或“对象.方法”调用对象的结构
三,如果创建了一个类的多个对象,则每个对象都独立的拥有一套类的属性。(非static的)
意味着:如果修改一个对象的属性a,则不影响另外一个对象属性a的值。
四,对象的内存解析
//测试类
public class PersonTest {
public static void main(String[] args) {
//创建Person的对象(创建的过程是固定的)
Person p1=new Person();
//Scanner scan=new Scanner(system.in)也是一个创建对象的过程,只不过()中有参数
//调用对象的结构:属性,方法
//调用属性(的格式):“对象 .属性“
p1.name="Tom";
p1.isMale=true;
//此处对name及isMale赋值,因为age赋过值
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);
//这两个输出语句的结果分别为:null,false;由此可以表明属性有默认初始值
//******************************
//将p1变量保存的地址值赋给p3,导致p1和p3指向了堆空间中的同一个对象实体
Person p3=p1;
System.out.println(p3.name);
//输出Tom
p3.age=10;
System.out.println(p1.age);
//输出10
}
}
//1.创建类,设计类的成员
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);
}
}