当前位置: 代码迷 >> 综合 >> Java学习大全 之-- CoreJava
  详细解决方案

Java学习大全 之-- CoreJava

热度:59   发布时间:2023-12-20 10:53:10.0
 

*****************************基础************************************
1.java是高级的编译语言,继承了c,c++优点,c的高效性,c++面向对象特性。
2.jvm --> 5部件:字节码指令集,寄存器,stack,heap,方法域
 内存分配:堆64M 栈64M 方法域64M
3.六大存储区域:
  堆:对象、临时变量
  栈:知道生命周期的变量
  静态存储区域:静态变量、静态块、静态方法
  常量存储区域:常量、final修饰的东西
  非RAM存储:硬盘
  流存储:管道存储

4.对象:描述一个事物,可以是具体的,可以是抽象的。
5.属性:指的是对象的特点。
6.方法:指的是对象的功能。
7.类:是创建对象的模板。类有普通类、抽象类、内部类、匿名类。
 类被编译时内部接口都会被加上static修饰符。
8.全局变量:全局范围可以用
9.局部变量:局部范围可以用
10.方法:修饰符+返回值+方法名字+参数列表+方法体
11.方法重载:名字相同,参数列表不同
12.八种基本数据类型:short int long float double char byte boolean
  短整型,整型,长整型,单精度,双精度,字符型,字节,布尔
13.程序控制语句:if,if else,for,while,do while;,while do,switch
14.数组:3种定义方法:
  String[] str = new String[10];定义不初始化
  String[] str = {"dd","ss",aa};定义并初始化
  String[] str = new String[]{"dd","ss","aa"};定义并初始化
15.二维数组
16.this:指向本类
17.final:定义类这不能被继承,定义方法则不能被重写,定义变量则不能第二次赋值,不能用来修饰构造方法。
18.static:修饰变量、方法。修饰变量时只能修饰全局变量。使得数据等到共享。在同一个类里调用静态方法不用实例化对象。调用别的类的静态方法或者变量时需要在静态方法、变量前面加上类的索引,这样jvm才知道加载那个类的静态方法和变量。
 原理:在jvm加载类的时候同时加载静态关键字修饰的(方法、变量、块)到内存的静态存储区域。
19.单例模式:当这个对象经常给使用的时候,为了节省资源开销把对象进行共享和控制。
 1.私有静态对象变量(共享一个对象)
 2.静态的对象类型方法(提供对象的实例)
 3.私有化构造器(防止别的类来创建对象)

20.构造器:名字和类名相同,没有返回返回值的方法。用于初始化操作。当一个类不写构造方法时候,jvm会自动调用本类的无参构造方法,如果写了构造方法则jvm只是调用写的构造方法。
21.jvm加载顺序
  简写   详细
  1.分配内存空间  1.分配内存空间
  2.初始化变量  2.初始化静态变量
  3.构造器  3.加载静态块
  4.引用变量赋值  4.加载静态方法(在静态块里被调用的会先加载)
  5.   5.初始化普通变量
  6.   6.加载构造块
  7.   7.加载构造器
  8.   8.加载普通方法(在构造块里被调用的会先加载)
  9.   9.其他成员
 (编译时,构造块内容被嵌入到所有构造方法内部开头,即是构造块先于构造方法。)
 在同一进程里面静态的东西可以共享的。需要使用静态东西的时候如果还没有加载则加载,如果已经被加载过了则直接跳过而加载下一项。


*****************************面向对象************************************
1、封装(不写修饰符就是default权限)
 原理:基于操作系统文件目录存储结构。
 作用:代码重用、方便管理、更新、维护、拓展、权限控制。
 作用:public和default可以修饰类、接口。
 作用:这四个修饰符可以修饰全局变量,不可以修饰局部变量(除了default)。
 作用:这四个修饰符可以修饰类普通的方法。
 作用:public、protected、default才能修饰抽象方法。因为抽象方法在抽象类里面,被继承了就要重写,而私有不能被访问,所以矛盾,所以private不可以修饰。
 作用:public、default才能修饰接口的方法。(规定的)不管怎么样编译接口后都是接口里面的方法都是public、abstract修饰的。
------------------------------------------------------------------------
作用域  当前类  同一包内 子孙类  其他包
------------------------------------------------------------------------
public  √  √  √  √
------------------------------------------------------------------------
protected √  √  √  ×
------------------------------------------------------------------------
default  √  √  ×  ×
------------------------------------------------------------------------
private  √  ×  ×  ×
------------------------------------------------------------------------
2、继承:是对象之间的层次关系(父类、子类)。需要用到extends关键字。一个类只能有一个父类。
 继承的作用:是子类可以直接调用父类的方法,可以重写拓展父类的方法属性。  方法的重写:子类和父类的方法相同(名字、参数列表和返回类型都相同、是否有static修饰也一样)子类的权限不能比父类的小,抛出异常不能比父类大
3、super关键字:是指父类。"super()"语句(即是父类构造函数)必须是子类的构造函数中的第一个执行语句。super可以调用父类的方法和使用父类属性&#

  相关解决方案