java基础知识点

原文的链接

Java基础知识总结(超详细整理)

Java语言的特点

1.面向对象

面向对象(OOP)就是java语言的基础,也是Java语言的重要特性。面向对象的概念:生活中的一切事物都可以被称之为对象,生活中随处可见的事物就是一个对象,我们可以将这些事物的状态特征(属性)以及行为特征(方法)提取并出来,并以固定的形式表示。

2.Java语法基础

标识符:用来标识类名,对象名,变量名,方法名,数组名,文件名的有效字符序列。

3.合法的标识符

由字母,数字,下划线"_",美元符号“$”或者“¥”组成,并且首字母不能是数字,不能把Java关键字

和保留字作为标识符。

关键字:Java语言中已经赋予了特定含义的

java基础知识点_第1张图片

保留字:

const goto

Java版本中尚未使用,但以后版本可能会作为关键字使用

变量:

程序运行期间可以被改变的量。在程序中使用变量,必须先创建它并为它取一个名字,并且

指明它能够存储信息的类型,这称为"变量声明",也叫容器的创建。

变量的作用:

变量的声明: 数据类型 变量名

变量的赋值:变量名=数据

变量的操作:放入打印语句进行输出或者进行运算

Java中的注释有三种

单行注释

多行注释

文档注释

数据类型

基本数据类型(8个),也称原始数据类型:

java基础知识点_第2张图片

引用数据类型(3种):数组,类,接口

类型转换:

自动类型转换,也叫隐式转换

强制类型转换,也叫显示转换

java基础知识点_第3张图片

运算符

运算符:一种特殊符号,用以表示数据的运算,赋值和比较数与整数

运算符分类:算术运算符,赋值运算符,比较运算符,逻辑运算符,三元运算符。

1.算术运算符

java基础知识点_第4张图片

 2.赋值运算符

java基础知识点_第5张图片

 3.比较运算符

java基础知识点_第6张图片

 4.逻辑运算符

java基础知识点_第7张图片

5.三元运算符

b?x:y;

先计算条件b,然后进行判断。如果b的值为true,计算x的值,运算结果为x的值;否则,计算y的值,运算,结果为y的值。

 

 Java流程控制语句

选择结构

if语句

if(条件表达式){一条或多条语句};

java基础知识点_第8张图片

 

 switch开关语句:

java基础知识点_第9张图片

 

循环语句

在程序中当要重复性的做某项工作时可以使用循环语句,包括:for循环,while循环,do...while循环

for循环语句:

java基础知识点_第10张图片

流程跳转

流程跳转语句:

break,continue

break:在swtich中结束case条件判断,在循环体中结束循环

continue:作用在循环体中,结束循环体的本次循环,而进入下次循环

数组

数组是数据的集合,一个容器,用来存储任何类型的数据,包括原始数据类型和引用数据类型,

但是一旦指定了数组的类型之后,就只能用来存储指定类型的数据。

数组声明的三种方式:

  • 数据类型[] 数组名 = new 数据类型[长度];
  • 数据类型[] 数组名 = {数据,数据,…,数据};
  • 数据类型[] 数组名 = new 数据类型长度[] {数据,数据,…,数据};

一堆数组:

语法:

数据类型[] 数组名:

,如:

int[]  num:

,

double[] d:

,

String[] str:

数组对象的创建:

语法:

数组名=new  数据类型[长度];

,如:

num=new  int[4];

,数组声明其长度后不可改变

 

赋值:

语法:

数组名[下标]=数据;

,如:num[0]=3;

数组元素的使用及遍历:

语法:

数组名[下标]=数据;

,如:num[0]=3;

数组元素的使用及遍历:

语法:

数组名[下标]

,获取指定下标是数据。

 

二维数组:

数组变量的声明:

语法:

数组类型[][] 数组名:

,如:

int [] [] num;

,

double[] [] D;

,

String[][] str;

数组对象的创建:

语法:

数组名=new  数据类型[外长度][内长度]

,如:

num=new init[4][3];

,数组声明其长度后不可改变。

赋值:

语法:

数组名[外下标][内下标]=数据;

,如: num[0][0]=3;

        

数组元素的使用及遍历:

语法:

数组名[外下标][内下标]

,获取指定下标是数据

java基础知识点_第11张图片

 

对象与类

对象:客观存在能够相互区分的个体,比如这辆汽车,这间房子,这张桌子,这株植物,这张支票,这件雨衣。概括来说就是:万物皆对象。

类:若干具有相同属性和行为的对象的群体或者抽象,类是创建对象的模板,由属性和行为两部分组成。

类是对象的概括或者抽象,对象是类的实例化

类的声明

[修饰符] class  类名 {

    [成员变量]

     [成员方法]

}

java基础知识点_第12张图片

 成员变量的声明:

[修饰符] 数据类型 变量名 [=初始值];

成员方法的声明:

[修饰符] 返回值类型 方法名([数据类型 参数名,......]){

//方法体 ,该方法完成的功能代码

}

构造器的声明:

[修饰符] 构造器名 ([数据类型 参数名,.....]){

//构造器完成的功能代码

}

注意:

1.构造器名必须和类名一致

2.构造器没有返回值类型

3.任何类都含有构造器。如果没有显式地定义类的构造器,

4.则系统会为该类提供一个默认的无参的构造器。一旦在类显式地定义了构造器,系统不会再为

这个类提供默认的构造器了。

类的使用

类变量的声明:

类名 对象名;

类对象的创建,赋值给变量

对项名=new 构造器([参数列表]);

对象属性的赋值:

属性:对象名.属性名, 对象名.属性名=数据;

java基础知识点_第13张图片 

 属性和方法的调用:

属性:System.out.println(对象名.属性名);方法:对象名.方法名();

java基础知识点_第14张图片

成员变量与局部变量:

成员变量:声明在类中方法体之外,可以有缺省值,可以使用修饰符。作用域:整个类

局部变量:声明在方法体或代码块中,没有缺省值,只能使用final修饰。作用域:当前方法体

参数:参数的本质是特殊的局部变量,只能定义在方法的小括号中

重载

方法的重载OverLoading:同一个类中定义了多个方法名相同而参数不同的方法

重载在同一个类中,方法名相同,参数不同(参数的个数,循序,类型不同)。

关键字

this关键字

this是一种特殊的引用,指向当前对象

this的两种使用方法:

如果发生局部变量和成员变量命名冲突时,可以通过this.成员变量名的方式区分成员变量和局部变量。

java基础知识点_第15张图片

 

一个构造方法中需要调用本类的另一个构造方法,可以通过this()的方式调用,但this()必须要书写在第一行。

java基础知识点_第16张图片

static关键字:

静态变量: 使用static修饰的成员变量叫做静态变量,静态变量和非静态变量的区别是:静态变量被所有的对象所共享,在内存中只有一个副本,它当且仅当在类初次加载时会被初始化。

而非静态变量是对象所拥有的,在创建对象的时候被初始化,存在多个副本,各个对象拥有的副本互不

影响。static成员变量的初始化顺序按照定义的顺序进行初始化。

静态方法:

使用static修饰的成员方法叫做静态方法,静态方法可以不依赖于任何对象访问(对于静态方法,是没有this的),由于这个特性,在静态方法中不能访问类的非静态成员变量和非静态成员方法,因为非静态成员方法/变量都必须依赖具体的对象才能够被调用。

super关键字

super代表的是父类对象。

使用方式

super.属性名,super.方法名()

用于在子类调用父类被隐藏的同名实例变量

super([参数列表])

用于在子类的构造方法中调用父类的构造方法

每个子类的构造方法在没有显示调用super()系统都会提供一个默认的super(),super()必须

是构造器的第一个条语句。

Java的三大特性

封装

封装指隐藏对象的状态信息(属性),不允许外部对象直接访问对象的内部信息(private实现)。但是可以提供一些可以被外界访问的方法来操作属性。

将类中成员变量private,提供public的get和set方法来控制属性的存取动作,以保证对私有属性操作的安全性能:

java基础知识点_第17张图片

继承

继承extends:多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些属性和行为,只要继承单独的那个类即可。多个类可以称为子类,单独这个类称为父类或者超类。

java基础知识点_第18张图片

基本语法:

[修饰符] class  子类名 extends  父类名{

 类体部分

继承是使用已存在的类的定义作为基础建立新类的技术,新类的定义可以增加新的属性或方法(对父类进行扩展),也可以拥有父类的属性和方法,并且通过自己的方法再次实现父类的方法,节省大量创建新类的时间,提高我们的开发效率。

java基础知识点_第19张图片

Java只支持单继承,不支持多继承。一个类只能有一个父类,不可以有多个父类。java支持多层继承(继承体系)。Java继承了父类非私有的成员变量和成员方法,但是请注意:子类是无法继承父类的构造方法的。

注意:不要仅为了获取其他类中某个功能而且继承,类与类之间要有所属("is a")关系

方法的重写:

子类从父类继承的某个实例方法无法满足子类的功能需要时,需要在子类中对该实例方法进行重新实现,这样的过程称为重写,也叫覆写,覆盖。

方法重写的前提:继承,子类的修饰符大于等于父类,方法名,参数列表,返回值类型必须相同

java基础知识点_第20张图片

 多态

多态:一种事物的多种形态(多态的前提:继承,重写,向上转型)

 java基础知识点_第21张图片

 

通过多态可以提高代码的可重用性,降低模块之间的耦合度。

 

 

你可能感兴趣的:(java,java)