20220719第三组张立学习笔记

知识点
`package com.jsoft;

public class ThatsAll {
/**
* 总结:
* 1.this代表当前类的对象,代表方法的调用者,通常用在构造器赋值,
* set方法赋值。当形参名和成员变量的名相同时,赋值操作。
* 2.封装,思想封装,把一堆重复执行的代码封装成方法。把一堆重复执行的
* 方法封装成一个类。
* 3.封装,代码层次的封装,所有的属性私有化。private,每个属性提供对应的
* setter和getter方法。
* 以后我们的赋值操作:
* 1.不再使用对象.属性的方式
* 2.使用构造器
* 3.setter方法
* 习惯:必须保证每个类都有一个无参构造器
*/
}
`
..........形参位置相当于在方法内部声明了一个局部变量没有赋值

编译阶段  运行阶段

封装: 某一段代码或功能需要重复使用,把一堆代码封装成方法,如果方法在好多类里使用,可以把一堆方法封装成工具类

封装:代码层面: 1,属性私有化,所有的属性private 封装 2,提供一个共有的set get 方法

setter 方法限制和检验setter传入的参数是否合法

getter按照客户的期望返回格式化的数据

隐藏对象的内部结构

正确定义一个类:所有的属性私有化,每个属性都有对应的getter和setter方法,

三个异常:1,数组下标越界,2,内存溢出(错误)3,空指针

引用数据类型的默认值(初始值是null,空引用)

增强for循环不操作原始数据,只操作映射的数据,

.
`package com.jsoft.afternoon;

/**

  • 面向对象的特征:封装

  • 1.代码层面

  •  (1)属性私有化,所有的属性都要使用private封装
    
  •  (2)提供一个公有的set,get方法。
    
  •  getter方法能够按照客户的期望返回格式化的数据
    
  •  setter方法可以限制和检验setter方法传入的参数是否合法
    
  •  隐藏对象的内部结构
    
  • 正确定义一个类:

  •  (1)所有的属性私有化
    
  •  (2)每个属性都有对应的setter、getter方法
    
  • 这是规矩,你得遵守。

  • 2.思想层面
    */
    public class Ch01 {

    public static void main(String[] args) {
    // Dog dog = new Dog("灰色",2);
    // dog.show();
    Dog dog = new Dog();
    // dog.show();
    // ......
    dog.setAge(20);
    int age = dog.getAge();
    System.out.println(age);

    }
    }
    package com.jsoft.afternoon.test01;

/**

  • 空指针异常
  • 什么情况下会出现空指针异常:
  • 引用数据类型的默认值(初始值是null,空引用)
  • 3个异常:
  • 1、数组下标越界
  • 2、内存溢出(错误)
  • 3、空指针

*/
public class Demo02 {

User user;

public void show() {
    user.getPassword();
}

public static void main(String[] args) {
   Demo02 d = new Demo02();
   d.show();

}

}
package com.jsoft.morning;

/**

  • this关键字
  • this代表的是当前类的对象,this代表的是当前方法的调用者
  • this既然是代表方法的调用者,它实际上和对象的作用是一样的
  •  既可以调属性,也可以调方法。
    
  • 一个类中可以有什么?
  • 属性,方法,构造器
  • this不能用在static方法中。
  • 开发中,this通常用在什么位置!
  • 通常用在赋值,构造器赋值。

*/
public class Ch02 {

String str;
int i;

public Ch02(){

}

public Ch02(String str) {
    this.str = str;
}

public Ch02(String str,int i){

// this.str = str;
// 调用构造器
// 不需要写任何的名字
/*
this调用构造器的要求
1、必须在构造器中使用this调用构造器
2、必须是第一句话(第一行代码)
*/
this(str);
this.i = i;
}

public void show(String str) {
    /*
        当使用对象调用属性时,调用的是成员变量
     */

// Ch02 c = new Ch02();
// this(str);
this.str = str;
this.info();
// info();
}

public void info(){
    System.out.println(str + "," + i);
}

public static void main(String[] args) {

// Ch02 c = new Ch02();
// c.show("哈哈");
// System.out.println(c.str);
// Ch02 c2 = new Ch02("呵呵");
// c2.info();
Ch02 c3 = new Ch02("嘿嘿",20);
c3.info();

    Person person = new Person("张三",25);
}

}
`
学习心得:

  • 注意细节
  • 理清思路
    学习心情
    忘了,只记得下午有点困,一直坐的挺难受
posted on 2022-07-19 19:13  百度翻译  阅读(36)  评论(0)    收藏  举报