一、类和对象
1、什么是对象
万物皆对象
2、什么是面向对象
人关注对象 (计算机而言):人关注事物信息
3、类和对象
1)类:类就是模型,确定对象将会拥有的特征(属性)和行为(方法)
2)对象:对象是类的实例表现;
3)关系:类是对象的类型;对象是特定类型的数据
4、属性和方法
1)属性:对象具有的各种静态特征 -“对象有什么”
2)方法:对象具有的各种动态行为 -“对象能做什么” "类"—实例化—>"对象"
二、创建类
1、包名的推荐命名规范
1)英文字母小写
2)域名的倒序:com.imooc.animal(最后是功能模块名称)
2、创建类举例
//宠物猫类 public class Cat { //成员属性(属性指有什么)、昵称、年龄、体重; String name;//昵称,String类型的为:null int month;//年龄,int 类型的为: 0 double weight;//体重,double 类型的为:0.0 String species;//品种 //方法(方法指能做什么):跑步、吃东西 //跑步的方法 public void run(){ //无参构造方法 System.out.println("我会跑步"); } public void run(String name){//带参构造方法 System.out.println(name+"快跑"); } //吃东西的方法 public void eat() { System.out.println("我会吃鱼");} }
三、实例化对象
新建一个类
public class CatTest { public static void main(String[] args) { //对象实例化 Cat one=new Cat(); //调用跑动吃东西的方法 one.eat(); one.run();//对象.方法,调用方法 one.name="花花";//对象.属性,给属性赋值 one.month=2; one.weight=1000; one.species="英短"; System.out.println("昵称:"+one.name); System.out.println("年龄:"+one.month); System.out.println("体重:"+one.weight); System.out.println("品种:"+one.species); one.run(one.name);//花花快跑 } }
四、单一职责原则
1)单一职责原则,又叫单一功能原则,它是面向对象设计重要原则。意思是一个类最好只有一个功能。
2)如果在一个类当中,承担的功能越多,它的交融和耦合性就会越高,它的复用性越低,同时由于耦合性比较高,当类当中其中一个职责发生变化时,就有可能会发生同类中其他职责的变化,进而影响整个程序的运行。
3)在程序设计中,尽量把不同的职责,放在不同的类中。(也就是说把不同的可能引发变化的原因封装到不同的类里面,这样当一方发生变化时,对其他参与者的影响会少很多,并提升复用性)
五、new关键字
Cat one=new Cat();
1、实例化对象的过程可以分为两部分:
1)声明对象 Cat one ;
只是在内存的"栈"空间里开辟了一块区域,名字叫one,此时里面为空(null)
2)实例化对象 new Cat();
是在内存的"堆"空间里开辟了一块空间,完成对象的初始化操作
2、在栈当中存储的实际上是堆当中地址的引用,new 关键字的作用:开辟新的对象空间
1)
Cat one=new Cat();
Cat two=new Cat();
修改two中的信息,不会对one造成影响
2)Cat two = one
指向同一块内存区域,修改two会覆盖one的信息