1.直数类型和封装类
直数类型:能直接赋值的,只是单个属性
String name;
name = "x";
封装类:基本数据类型的封装,可定义函数,用于更好地操作数据
public class User{}
User user = new User(); 必须用到new
User.add();
泛型类(封装类的一种):类名<类型名(不能是基本数据类型)> 是类型参数,也就是将类型作为一种参数去传递
List<int> 错!int不是一个类,而是基本数据类型
要写出int的封装类,Interger
List<Interger>
-
属性相等判断
基本数据类型 ==
应用数据类型用 equals (不仅要确保数据一样,地址也要一样
2.类与对象
类:具有相同、相似的特征属性,行为方式,功能的一类事物的描述
对象:具体的事物
3.程序中的类与对象
- 程序:代码+资源+配置文件 (都是静态资源)
写程序–主要是写代码(计算机指令)
Q:程序里有对象嘛?
A:莫得,程序都是静态资源,对象的出现需要代码运行之后才会有
运行之后的程序 --进程
进程的子任务操作–线程
句柄是一个操作指令
-
程序中的类:一类事物的代码描述
程序中的对象:代码运行之后的结果(代码运行之后才能申请内存空间,存储数据和代码指令)
4.类的结构
这一类事物相同的属性和功能
属性:可以用一个数据/名称来表达 (名词)
方法/函数:标识表示一个功能或者行为的一段代码 (需要逻辑/运算/联合调用)
-
关键字
(1)static:唯一性
用于修饰属性:所有对象共用唯一一份静态的成员变量,可修改,通过类名.成员变量名来使用
用于修饰方法:静态方法,用类名.方法名来使用。只能被继承,不能重写,不能再静态方法中访问非静态的成员变量
【如果继承体现既有构造方法又有静态代码,则先执行最顶层的类的静态代快一直到最底层,然后在区执行最顶层的类的构造方法(静态代码块只执行一次)】
(2)final:最终形态
用于修饰属性:不能被改写(如果是基本数据类型则代表其值不能发生变化,如果是修饰引用数据类型,则代表其指向的对象不能变化了,但是指向的对象的内容是可以发生变化的)【要么再声明的时候就赋初值,要么再所有类的构造方法中都为其赋值】
用于修饰类:终态类,不能被继承
用于修饰方法:终态方法,不能被重写
**const:只读 只能再类中用于修饰变量,其值无法被修改(类外用define)
是C#语言中的关键字,java中莫得,只作为保留字以备扩充