知识总结:
java思想:
类和对象:
属性和方法:
文件:Cat.java
package com.imooc.animal;
/**
* 宠物猫类
* @author zhangziwei
*
*/
public class Cat {
//成员属性:昵称、年龄、体重,品种
String name;//昵称
int month;//年龄
double weight;//体重
String species;//品种
//成员方法:跑动,吃东西
public void run(){
System.out.println("小猫会跑");
}
//方法重载
public void run(String name){
System.out.println(name+"快跑!");
}
public void eat(){
int age;
System.out.println("小猫吃鱼");
}
}
文件:CatTest.java
package com.imooc.animal;
public class CatTest {
public static void main(String[] args){
//对象实例化
Cat one=new Cat();
//测试,对象方法的调用
one.eat();
one.run();
//测试对象属性的赋值
/*局部变量不允许直接不赋值输出
但是属性可以直接不复制输出,属性系统默认有初始值
System.out.println("昵称:"+one.name); //系统属性默认值null
System.out.println("年龄:"+one.month); //系统属性默认值0
System.out.println("体重:"+one.weight);//系统属性默认值0
System.out.println("昵称:"+one.species);//系统属性默认值null
*/
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);
}
}
面向对象的设计:遵循单一职责原则:一个类最好只执行某个单一功能
对象的声明,对象的创建(实例化):
对象的声明,只是在栈空间里面进行的分配,但是没有真正形成!
对象实例化后,会在内存堆空间分配内存,对象才实际形成!
分配,此时的对象才是真正的形成!
对象实例化的二种方式:
public class CatTest {
public static void main(String[] args){
//对象实例化
Cat one=new Cat();
Cat two=new Cat();
// Cat two=one;//将对象one的内存空间地址赋值给对象two,两个对象指向同一Cat类空间
}
}
默认属性的初始值: