面向对象:关心谁来做
面向过程:关心怎么做
面向对象总结成一句话:就是分工与协作,干活的是对象
在生活中:先有对象,再有类
Java中:先有类,再有对象
1.定义类
Phone p= new Phone();
2.由类孵化对象
类中有:静态的属性特征(属性) 动态的行为能力(方法)
属性的定义:public int account;
public:访问修饰符
int:属性的数据结构
account:属性的名字
临时变量 不能有访问修饰符,属性写在类中,不能写再放方法中,变量必须初始化之后才能使用,但是属性会有默认值,这个默认值也是初始化
使用属性:对象名.属性名
定义代码(属性和方法)写在类中
逻辑代码写在方法中
方法(函数):成员方法和 构造方法
成员方法:访问修饰符 返回值类型 方法名(修饰符列表){}
构造方法:访问修饰符 方法名(修饰符列表){}
两个方法的差别:构造方法不需要写返回值类型,而且他的方法名必须要和类名一致
构造方法:也是一种行为能力,是特殊的行为能力,孵化对象的能力。构造方法可以有N个
当我们没有定义构造方法的时候,系统会给我们默认一个无参的构造方法,如果有定义的构造方法,系统就不会默认生成一个无参的构造方法了,如果有多个构造方法,呢么会根据参数列表来选择来用哪一个
在方法中return可以直接结束方法
一般包名都是域名的倒叙,为了区分别的包,造成重名
所有的类都要有包名,不然不能被使用
每日一练
1,谈谈你对面向对象的理解?什么是类跟对象?(面试题)
面向对象就是分工与协作,干活的都是对象
类是对象的抽象,对象是类的实例
2,类中可以写哪些内容?
类中可以写静态的属性(属性)和动态的行为能力(方法)
3,如何创建对象?何如使用对象?
用关键字new来创建对象 Phone p= new Phone();
对象.属性 或者 对象.方法
4,基本类型的属性可不可以不初始化?为什么?
可以不初始化,因为系统会默认初始化
5,定义构造方法有什么要求?
不用写返回值类型,构造方法名和类名要一致
访问修饰符 类名(修饰符列表){
}