java1

Posted aaa2222339

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java1相关的知识,希望对你有一定的参考价值。

网站:

String[] args:可以用来获取命令行用户输入进去的参数

System.out.println(s);这个方法会调用s的toString方法

 

javaSE:java标准版

javaEE:java企业版,定位在服务器端,包括SE

javaME:定位在消费产品上

java既有编译(c,c++)又有解释:

 

JDK包含JRE,JRE包含JVM(虚拟机) ,各个操作系统对应不同jvm

静态变量:类变量,类在它在。static int a;

成员变量从属于对象

final:

 

 

整型:

 

 

 

右边的整型常量(就是数字)默认int,当数字过长时,后面加L表示转成long型常量,否则无法表示(下图是存在2种类型):

 

右边的数默认是double,此处加f转成float:

float a = 2.1f:

float和double都不是精确的,但是BigDecimal是:

只是精度是精的,但是不是指任意长度的整数

BigInteger,BigDecimal

  与:& ,或:|,<<左移:

true & false = false ,3 & 4 = 0 

短路与: A&&B,若A是false,则后面不看了,与&仅此区别

Scanner:得到键盘输入

 格式化快捷键:Ctrl+alt+L

重载:方法名一致

 

栈:

 

 堆:

类和对应的存储:

 

 

 

垃圾回收(C++没有):

搜索堆中哪些对象没有被引用,则当垃圾回收掉

分代垃圾回收:

 

this:可指代当前对象:

 类只能调动static修饰的东西。

 

 静态初始化块:

运行时会先执行父类的静态初始化块,再执行它,再执行别的句子

 

 值传递:就是传递副本

但是如果传的是对象,其实传地址,则操纵同一个对象:

 

 package:类似文件夹

 

 

同一个包里面的类不用import

不同包得导:

 

还能导入静态属性和方法,就能直接使用方法和属性

java的类没有多继承,接口有。

默认extends Object

instanceOf :

判断对象是否是后面类的对象:

 

 重载overload是一个类多个同名方法

override重写是子类重写父类的方法:

要求:

1.方法名和参数列表相同

2.子类返回值类型要小

 

 

==:看是否完全相等,对象则看地址

super:指向父类

 

 构造器中默认调用父类的构造器:

 

 属性查找顺序:

 

 访问控制符(访问类内部的属性和方法或者整个类):

 

 此处的子类是不同包,但是有继承关系

 多态又叫动态绑定:调用某一方法时,要看是谁在调用,不同人调用结果不同

多态条件:

 

 

Animal d= new Dog();

d.shout();

d只能调用Animal里面的方法,或者Dog里面重写Animal的方法(多态)

((Dog)d).shout()向下转型后就能调用狗的所有方法了

 数组:

  

 for:

 abstract:

 

但是可以:

抽象类 a = new 子类();

 接口: 

 

 由于是Volant,v只能调用fly。 

 非静态内部类(类似进程中的线程):

可以访问外部类的成员:

 

 

 

  

 

String:

比较字符串一般用equals

 

 

 

 常用方法:

replace不会改变s1本身

 

 

  

数组 拷贝:

arraycopy:

从s1的index=2处开始向s2的6处拷,拷贝3个元素过去

Arrays:

Arrays.toString(a):输出数组a的全部元素

sort:排序

 

binarySearch:

查询a数组中元素30的index:

 

 二维数组:

 

 

 

 二维数组存储表格:

 

 包装类:

基本数据类型,包装类对象,字符串的相互转化:

 

 

 

 拆箱与装箱:

字符串转成数字:
int a = Integer.parseInt("123");

Integer.toHexString(123):将十进制123转换成十六进制,然后以字符串形式输出。

在valueOf(n)中,当-128<n<127时,返回缓存数组中的元素地址,如果超出这个范围,则返回新的包装类对象

 

 

 StringBuilder可以被修改(相比较string)

 

 

 

循环累加字符时,推荐:

 

Date:

以1970为基准能得到时间戳

 

 

 

 DateFormat:字符串和时间的转化

 

 

Calendar:

 

 

 

 

 

 

 

枚举:

 

异常:

 

try catch:

finally必然执行

 

 

异常一层层外抛,最后抛给jvm:

 

以上是关于java1的主要内容,如果未能解决你的问题,请参考以下文章