JavaSE基础知识

mac2022-06-30  104

一:语法基础

数据类型:

基本数据类型:boolean,byte,short,char,float,,int,double, long

 

注:double型比float型存储范围更大,精度更高,所以通常的浮点型的数据在不声明的情况下都是double型的。

如果要表示一个数据是float型的,可以在数据后面加上“F”。 浮点型的数据是不能完全精确的,所以有的时候在计算的时候可能会在小数点最后几位出现浮动,这是正常的。

包装类型:

基本类型并不具有对象的性质,为了让基本类型也具有对象的特征,就出现了包装类型

基本类型对应的包装类型如上图

例如:

1 Character ch = new Character('x'); 2 char c = ch; 3 char c = 'c'; 4 Character ch = new Character(c);

自动拆箱与装箱:

装箱:及将基本数据类型装箱成为包装类

拆箱:及将包装类拆成基本数据类型。

Java5以后提供自动装箱与拆箱,只需这样就可以了:

Integer i = 10; //装箱 int n = i; //拆箱

 

引用数据类型:

引用数据类型传递的是内存的使用权,是一块内存空间,它可以由多个单位同时使用。 

数组:

String:字符串型,用于存储一串字符

常用关键字及其用途: 

类与接口的声明:class,extends,implements,interface

流程控制:if.else,switch,do,while,case,break,continue,return,default,for

异常处理:try,catch,finally,throw,throws,

修饰符:

static:无论创建多少对象,程序中仅有一个,类中的静态成员会随着类的加载而加载

abstract:

final:

private:

public:

protected:

transient,

volatile

其他:new,instanceof,this,super,void,assert,enum

运算符:

        a++是后自增;++a是先自增;

标识符:

        Java合法标识符与c有一点区别,Java标识符由数字,字母和下划线(_),美元符号($)或人民币符号(¥)组成,而且还要求首位不能是数字

二:类与对象

概念

类(Class):实际上是对某种类型的对象定义变量和方法的原型。

对象(Object):

实例(Instance):

知道抽象类是不可以被实例化的,那它的对象就不能叫实例化对象,只能叫对象,如下:

Type type = typeof(int);//Type是抽象类,不允许实例化,这里的type是Type类的对象,而非实例化对象(实例)

Instance 创建的过程:

无继承:分配内存空间, 初始化变量, 调用构造函数

有继承:处理静态动作, 分配内存空间, 变量定义为初始值 , 从基类->子类, 处理定义处的初始化, 执行构造方法

构造方法:

在具有继承关系的类中,一定是先调用父类的构造方法,再调用子类的构造方法

普通方法:

   静态方法:子类只能继承,重载,隐藏父类的静态方法,不能重写父类静态方法

   抽象方法:

         方法的重写:

重载:

this引用:不能在main()中使用

super关键字:调用父类的构造方法,不能在main()中使用

抽象类

1:含有抽象方法的类必须声明为抽象类  

2:抽象类中不是所有的方法都是抽象方法  

3 :抽象类的子类必须实现父类所有的抽象方法才能实例化  

4: 抽象类不能实例化

接口:

1:实现接口必须实现接口的所有方法

区别:如果一个抽相类中所有方法都是抽象的,而且抽象类中的数据成员都是final的常量,那么这个抽象类就是一个接口,接口中的所有方法都是抽象的,而抽象类可以定义带有方法体的普通方法;接口中的方法默认是public abstract的,而成员变量默认是public static常量。

1 //接口,全部都是抽象方法 2 public interface A(){ 3 int i=1;//等价于public static fianl int i = 1; 4 public void strat();//等价于public abstract void strat(); 5 public void stop();//等价于public abstract void stop(); 6 } 7 //抽象类,并不是所有方法都是抽象方法 8 public abstract B(){ 9 public void strat(){ 10 system.out.println("这是抽象类的一个方法"); 11 } 12 abstract void run(); 13 }

 

三:JAVA常用类

Object类:

equals()方法:判断两个引用是否指向同一个对象,而“==”用来比较两个对象是否相等,这两个对象可以是基本类型,也可以是引用类型  返回true或false

hashCode()方法:返回对象的散列码值

toString()方法:

四:JAVA语言新特性

枚举:enum

注解:(一个好的程序员一定要会自己写注解)

lamdba表达式:

五:容器

内容较多,再出新篇

(新篇链接:https://www.cnblogs.com/nullering/p/9600821.html)

六:异常处理

异常的体系架构:

Error:Error类对象由 Java 虚拟机生成并抛出,大多数错误与代码编写者所执行的操作无关。这些异常发生时,Java虚拟机(JVM)一般会选择线程终止;

Exception:

ThrowableExceptionRuntimeExceptionErrorRuntimeException 和 一般 Exception 的区别, 具体处理方法等

七:IO流

基本IO的体系包括有InputStream , OutputStream, Reader/Writer, 文件读取,各种流读取等,NIO 的概念, 具体使用方式和使用场景。

借用这张图片,更好理解

      1:如果是音频文件、图片、歌曲,就用字节流好点,如果是关系到中文(文本)的,用字符流好点.      2:输入输出对控制台而言,每一个流(字节FileInputStream,FileOutputStream,字符FileReader,FileWriter)对应一个文件      3:操作时一般常用链接流多次对2中的流进行包装            字节流包装缓冲流:BufferInputStream,BufferOutputStream            字符流包装缓冲流:BufferReader,BufferWriter      4:转换流:        通过 InputStreamReader,OutputStreamWriter来关联,实际上是通过byte[]和String来关联 在实际开发中出现的汉字问题实际上都是在字符 流和字节流之间转化不统一而造成的.

八:泛型

 

九:注解

 

 

十:多线程

 修正新篇:https://www.cnblogs.com/nullering/p/9314052.html

 

十一:AWT与Swing组件

常用组件:JButton(按钮),JTextField(文本框),JCheckBox(复选框),JRadioButton(单选按钮 ButtonGround.add(JRB)~~~),JList(l列表框)

菜单组件:JMenuBar(菜单条),JPopupMenu(弹出式菜单),JTabbedPane(页签面板),JToolBar(工具栏)

数据管理组件:JTable(表格),JTree(树状视图)

其他:

十二:JDBC操作

 

十三:网络编程

 

转载于:https://www.cnblogs.com/nullering/p/6933934.html

相关资源:入门级JavaSE基础知识图谱
最新回复(0)