java基础
最近看了刘意版的java基础视频,很不错,分享一下别人的百度磁盘视频连接:
https://pan.baidu.com/s/1RGrSCBOZ53Uy8HeUEqLO3g#list/path=%2F
提取码:f7qc
以下记录笔记:
JVM:java虚拟机,是保证java可以跨平台执行,(window版JVM,linux版JVM)
JRE:java运行环境,包含了java虚拟机(JVM)和java程序所需的核心类库
JDK:java开发工具包,提供给java开发人员使用的,其中包含了java的开发工具,也包含了JRE。
其中开发工具:编程工具(javac.exe)和打包工具(jar.exe)等
数据类型:
基础类型:int,char, string , boolean, long, short, double
引用类型:类,接口
匿名对象:没有名字的对象(new 类名())
应用场景:
A:调用方法,仅仅只调用一次的时候。(new 类名().方法名())
注意:调用多次的时候不适合;
好处:匿名对象调用完毕就是垃圾,可以被垃圾回收器回收。
B : 作为实际参数传递
封装: 是指隐藏对象的属性和实现细节,仅对外提供公共访问方式。
private: 权限修饰符,可以修饰成员变量和成员方法,被其修饰的成员只能在本类中被访问
a: 把成员变量用private修饰
b: 提供对应的getxxx()和setxxx()方法
this: 是当前类的对象引用。它代表当前类的一个对象。
注意:哪个对象调用这个方法,在该方法内部的this就代表那个对象。
应用场景:解决局部变量隐藏成员变量
构造方法:类有默认空构造方法,构造方法可以给成员变量赋值。
格式:
a: 方法名和类名相同
b.没有返回值类型,连void都不能有
c.没有返回值
注意事项:
a.我们没有写构造方法,系统将提供一个默认的无参构造方法
b.我们给出构造方法,系统将不再提供默认构造方法
推荐:永远手动自己给出无参构造方法。
static的特点:
a.随着类的加载而加载。
b.优先于对象存在。
c.被类的所有对象共享。
其实是我们判断该不该使用静态的依据。
举例: 饮水机和水杯的问题思考。
d.可以通过类名调用;
也可以用过对象调用;
推荐:使用类调用,一般称其为类相关的,类成员。
注意事项:
a. 在静态方法中没有this关键字
静态是随着类的加载而加载,this是随着对象的创建而存在。
静态比对象先存在。
b. 静态方法只能访问静态的成员变量和静态的成员方法。
非静态方法:
成员变量:既可以访问静态,也可以访问非静态
成员方法: 既可以访问静态,也可以访问非静态
静态方法:
成员变量: 只能访问静态
成员方法:只能访问静态
main方法的格式讲解:
public static void main(String[] args){…}
public: 公共的,访问权限最大的。由于main方法是被jvm调用,所以权限要够大。
static: 静态的,不需要创建对象,通过类名就可以,方便jvm的调用。
void: 因为我们曾经说过,方法的返回值是返回给调用者,而main方法是被jvm调用。访问内容给jvm没有意义
main:是一个常见的方法入口,我见过的语言都是以main作为入口。
String[] args: 这是一个字符串数组。值去哪里了?
这是早期为了接收键盘录入的数据,格式如:
java maindemo hello world java
java.lang包下的类不需要导入,其他的全部需要导入
代码块:
局部代码块: 局部位置,用于限定变量的生命周期。
构造代码块: 在类中的成员位置,用{}括起来的代码。每次调用构造方法执行前,都会先执行构造代码块。
作用: 可以把多个构造方法中的共同代码放在一起。
静态代码块: 在类中的成员位置,用{}括起来的代码,只不过它用static修饰。
作用: 一般是对类进行初始化。
继承: 把多个类中相同的内容给提取出来定义到一个类中
关键字:extends
格式: class 子类名 extends 父类名{}
好处:
1.提高代码的复用性
2.提高了代码的维护性
3.让类与类之间产生了关系,是多态的前提