写在前边
学习了一段时间的Java,做了些笔记,拿出来给大家分享一下,如果里面有什么错误的地方,还请各位多多指正ヾ(◍°∇°◍)ノ゙
1.Java中的8中基本数据类型
byte、short、char、int、long、float、double、boolean
2.Java中static静态方法和普通方法的区别
在类中使用static修饰的静态方法会随着类的定义而被分配和装载入内存中;而非静态方法属于对象的具体实例,只有在类的对象创建时在对象的内存中才有这个方法的代码段。
注意:非静态方法既可以访问静态数据成员 又可以访问非静态数据成员,而静态方法只能访问静态数据成员;
非静态方法既可以访问静态方法又可以访问非静态方法,而静态方法只能访问静态数据方法。
原因:因为静态方法和静态数据成员会随着类的定义而被分配和装载入内存中,而非静态方法和非静态数据成员只有在类的对象创建时在对象的内存中才有这个方法的代码段。
引用静态方法时,可以用类名.方法名(推荐)或者对象名.方法名的形式。
总结:
(1)static修饰的静态方法会随着类的定义而被分配和装载入内存中,编译器只为整个类创建了一个静态变量的副本,也就是只分配一个内存空间,虽然可能有多个实例,但这些实例共享该内存,特别值得注意的是,任何一个对象对静态数据成员的修改,都会影响其它对象。
(2)静态不能引用非静态这一特性,是由于静态的会随着类的定义而被分配和装载入内存中这一关键点决定的;如果静态引用了非静态的,根本无法从内存中找到非静态的代码段,势必会出错,这种做法是Java虚拟机决不允许的。
3.重载
和public、static没有任何关系,和参数的顺序和个数有关系,严格区分大小写,但大写和小写就是两个函数了,不是重载了
4.数组
int[] arr1 = new int[10];
int[] arr2 = new int[]{1,2,3};
通过数组可以实现多个数的返回。都装塑料袋里呗!
public static void main(String[] args){
int[] result = calculate(1,2,3);
System.out.println("总和:" + result[0]);
System.out.println("平均值:" + result[1]);
}
public static int[] calculate(int a,int b,int c){
sum = a + b + c;
avg = sum / 3;
int[] arr = {sum,avg};
return arr;
}