一些Java基础

Java基础

Java属于解释型语言,源代码不直接翻译成机器语言,而是先翻译成中间代码,再由解释器对中间代码进行解释运行。

 

1.继承

实现: public  class  子类 extends  父类{}

final 关键字:当不希望一个类被继承是则在class前加上关键字final

子父类存在同名成员时,子类中默认访问子类的成员,可通过super指定访问父类的成员。格式:super.xx  

创建子类对象时,默认会调用父类的无参构造方法,可通过super指定调用父类其他构造方法,格式:super(yy)

 

2.封装

实现: private String name;

 

3.多态

实现:instanceof

 

4.抽象

实现:abstract class Ceshi

一个类中有抽象方法则必须申明为抽象类。抽象类和接口中都可以包含静态成员常量。

 

5.接口

实现:interface

public class 类名 extends 父类名 implements 接口名

接口是一种特殊的抽象类,其中全都是抽象方法,不能被实例化;默认权限就是public(只能是)

 

Volatile

volatile是在告诉jvm当前变量在寄存器中的值是不确定的,需要从主存中读取。volatile仅能用在变量上,不会造成线程的阻塞。

 

 

方法重写

两个方法返回值、方法名、参数列表必须完全一致;子类中的权限不能小于父类的权限;发生在继承类中

 

方法重

参数名相同,参数列表可以不同;发生在一个类中

 

构造方法

构造方法就是与类同名的那个方法,它的作用是可以用来初始化

构造方法必须跟类名相同,普通的类方法能与类同名的,但是要返回值。

一个类可以定义多个构造方法

constructor;构造函数。

class Person {
public Person(String n,int a) //构造方法

{
 name = n; age = a;
}
 private string name;
 private int age;
}
static void main(String[] args){
Person p = new Person("菜包",22);//这就是作用
}
//Person("菜包",22);其中这个就是构造函数,“菜包”为构造方法的形参;

 

abstract方法

abstract方法可以用来修饰一个类或者一个方法。 修饰一个方法时,表示该方法只有特征签名(signature),没有具体实现,抽象方法只可以被public 和 protected修饰

 

static方法

static方法一般称作静态方法,静态方法,可以直接通过类名调用而不需要通过对象调用。接口中没有static类型。

 

String

String简介:定义不可变(final)的字符串常量,常量池中生成一个字符串

new String:在堆上创建字符串对象

String.Intern():将字符串添加到常量池

String str=”JA”+”VA” ==  String str=”JAVA”

常量字符串和变量拼接时(String str3=Str + “01”)会调用stringBuilder.append()在堆上创建新的对象。

String[] ss=s.spilt(“”):根据括号中的内容将字符串划分为单词

Arrays.sort(int[] a):对一个数组的所有元素按从小到大排序。

 

Integer

为Integer赋值的时候,java编译器会将其翻译成调用valueOf()方法。比如Integer i=127翻译为Integer i=Integer.valueOf(127)

然后我们来看看valueOf()函数的源码:

public static Integer valueOf(int i)
{
        //high为127
        if(i >= -128 && i <= IntegerCache.high)
            return IntegerCache.cache[i + 128];
        else
            return new Integer(i);
}

 

 

Loading....

猜你喜欢

转载自blog.csdn.net/weixin_41328649/article/details/85345198