类 对象 构造方法
目的
巩固java基础知识,弄懂为何要创建对象,并且如何通过对象来实现各种功能。会使用构造函数,在创建对象时为对象赋值。
技术
类:抽象 不实际存在 没内存
对象: 某个类的具体体现 有内存
属性:存值
方法:功能
public 公共的 外部可以直接访问这个属性/方法
private 私有的 不希望外部访问这个对象的一些属性和方法
给对象赋值的方式
1.对于public修饰的属性 使用对象直接调用
p.number = 'A';
2.对于private修饰的属性 不能直接调用 只能间接使用
setter/getter方法
建议将setter/getter方法定义在类的最后面 避免干扰阅读
构造方法
a.希望在对象创建的时候做点其他事情
b.在对象创建的时候 需要给属性赋值 自定义构造方法
创建一个类的一个对象的时候 就会被调用的方法
方法重载:同一个类里面有多个同名的方法 但是返回值或者参数不同
static
修饰的属性和方法都会在对象创建之前优先加载
属性 静态属性
方法 静态方法
实例方法/对象方法 :必须创建一个对象才能调用的方法
类方法/静态方法 :不需要创建对象 直接用这个类来调用
静态属性:
1.定义一个常量 只能赋值一次
2.单例设计模式
技术运用
setter/getter方法给对象赋值
//给外部提供一个set方法 通过这个方法间接给number赋值
public void setNumber(String num){
number = num; //可以对外部给的值进行控制
}
//给外部一个get方法 访问某个变量的值
public String getNumber(){
return number;
}
public String getColor() {
return color;
}
构造方法赋值
class Poker{
//成员变量的作用域 从对象创建到对象被销毁
private String number;
private String color;
//类的默认构造方法
public Poker(){
// number = "A";
// color = "♥";
System.out.println("构造方法");
}
//构造方法的重载 重新写一个有参数的构造方法
//通常给一个属性赋值 形参名尽量个属性名一致
//变量在使用的时候有就近原则
public Poker(String number, String color){
//调用构造方法的时候 这个对象在内存里面已经分配好了
//这里的this指的是创建的对象
this.number = number;
this.color = color;
System.out.println("自定义的构造方法");
}
静态方法和实例方法
public static String addr;
public void test(){
System.out.println("这是对象方法");
}
public static void test2(){
System.out.println("这是静态方法");
}
//使用类的实例方法/对象方法
MyClass c1 = new MyClass();
c1.test();
//使用类方法/静态方法
MyClass.test2();
//调用静态属性
MyClass.addr = "";
心得
今天上午学习的时候感觉状态还挺不错的,但是当下午开始真正写demo的时候感觉好难,也不太能跟上节奏。不过我也有些心理准备,在昨晚我自己写这个demo的时候也是无法下手,原本是想今天好好听的,结果打足了精神还是没能跟上,看来自己手速还是不行啊。下次准备先好好听,听完了再写应该会好点。