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);}
}
/**
- 空指针异常
- 什么情况下会出现空指针异常:
- 引用数据类型的默认值(初始值是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);
}
}
`
学习心得:
- 注意细节
- 理清思路
学习心情
忘了,只记得下午有点困,一直坐的挺难受
标签:第三组,封装,张立,20220719,Ch02,str,方法,public,属性 来源: https://www.cnblogs.com/damecss/p/16495352.html