总结了一下java基础!----以后慢慢更新,因为个人原因,这些都不在给我测试的代码,有想学的!请自己检验

Java 的八种类型(直接上图,写一下太麻烦):

Java变量(说白了就是定义变量谁可以使用)

局部变量(谁定义的谁使用)

实例变量(谁想用就用)

类变量(当前创建的类能使用,不切换其他类你随便特点:Static)

Java:修饰符(给出准确解释,不在翻译)

访问修饰符

默认的,也称为default,在同一包内可见,不使用任何修饰符。

私有的,以private修饰符指定,在同一类内可见。

共有的,以public修饰符指定,对所有类可见。

受保护的,以protected修饰符指定,对同一包内的类和所有子类可见。

访问修饰符,主要用于控制继承,

后面写分装继承多态的时候进行详细解释

注意:

父类中声明为public的方法在子类中也必须为public。

父类中声明为protected的方法在子类中要么声明为protected,要么声明为public。不能声明为private。

父类中默认修饰符声明的方法,能够在子类中声明为private。

父类中声明为private的方法,不能够被继承。

非访问修饰符

static修饰符,用来创建类方法和类变量。

1.静态变量:

static关键字用来声明独立于对象的静态变量,无论一个类实例化多少对象,它的静态变量只有一份拷贝。静态变量也被称为类变量。局部变量不能被声明为static变量。

2.静态方法:

static关键字用来声明独立于对象的静态方法。静态方法不能使用类的非静态变量。静态方法从参数列表得到数据,然后计算这些数据。

Final修饰符:

final修饰符,用来修饰类、方法和变量,final修饰的类不能够被继承,修饰的方法不能 被继承类重新定义,修饰的变量为常量,是不可修改的。

1.修饰变量:

final变量能被显式地初始化并且只能初始化一次。被声明为final的对象的引用不能指向不同的对象。但是final对象里的数据可以被改变。也就是说final对象的引用不能改变,但是里面的值可以改变。

final修饰符通常和static修饰符一起使用来创建类常量。

2.修饰方法:

类中的Final方法可以被子类继承,但是不能被子类修改。

声明final方法的主要目的是防止该方法的内容被修改。

abstract修饰符,

用来创建抽象类和抽象方法。抽象类不能用来实例化对象,声明抽象类的唯一目的是为了将来对该类进行扩充。synchronized和volatile修饰符,主要用于线程的编程。

1.修饰类:

 抽象类不能用来实例化对象,声明抽象类的唯一目的是为了将来对该类进行扩充。

一个类不能同时被abstract和final修饰。如果一个类包含抽象方法,那么该类一定要声明为抽象类,否则将出现编译错误。

抽象类可以包含抽象方法和非抽象方法

2.修饰方法:

抽象方法是一种没有任何实现的方法,该方法的的具体实现由子类提供。抽象方法不能被声明成final和static。

任何继承抽象类的子类必须实现父类的所有抽象方法,除非该子类也是抽象类。

如果一个类包含若干个抽象方法,那么该类必须声明为抽象类。抽象类可以不包含抽象方法。

抽象方法的声明以分号结尾,例如:public abstract sample();

synchronized修饰符(只能被一个线程访问)

synchronized关键字声明的方法同一时间只能被一个线程访问。Synchronized修饰符可以应用于四个访问修饰符。

Transient(预处理等等)

序列化的对象包含被transient修饰的实例变量时,java虚拟机(JVM)跳过该特定的变量。

该修饰符包含在定义变量的语句中,用来预处理类和变量的数据类型

Volatile修饰符(针对变量进行的操作)

修饰的成员变量在每次被线程访问时,都强迫从共享内存中重读该成员变量的值。而且,当成员变量发生变化时,强迫线程将变化值回写到共享内存。这样在任何时刻,两个不同的线程总是看到某个成员变量的同一个值。一个volatile对象引用可能是null。

运算符:

算术运算符

关系运算符

位运算符逻辑运算符(注意:&&和&    ||和|)

逻辑运算符(注意:&&和&    ||和|)

赋值运算符

其他运算符

instanceOf 运算符(判断是不是你规定的类型--针对实列变量)

String name = 'James';

boolean result = name instanceOf String;(name是String类型)

判断:

循环

while循环

do…while循环

for循环

判断

if语句

switch语句

Number类

  1. Number(对一些数据类型,根据自己的内置,分装,解开支持各种用(这也是为什么刚学习的时候,我们定义类型都是int,long.而后面做项目的时候就用到integre了))

包装类有Integer、Long、Byte、Double、Float、Short(在需要使用对象,而不是内置数据类型(你创建的那些玩意))

  1. Math(基本函数,指数,对数,平方根,三角函数)

部分方法:

Character类(和为什么用intergre一个道理)

String类型

String类是不可改变的,所以你一旦创建了String对象,那它的值就无法改变了。 如果需要对字符串做很多修改,那么应该选择使用StringBuffer & StringBuilder 类

字符串长度length()方法

String拼接方式

  1. String1.concat(String2);
  2. String1+String2;

猜你喜欢

转载自blog.csdn.net/cntjss/article/details/88237766
今日推荐