Java 学习之过错(一)
2017-11-27 19:40
169 查看
1.long 型数据常量用后缀L表示 例:12L 1200L
float型数据常量后必须有后缀F/f 例: 22.76f 123.78f
double型数据常量后可以有后缀D/d,也可以没有
2.声明数组
一维数组:
数组的元素类型 数组名 [ ] int [ ] a,b;
数组的元素类型 [ ] 数组名 int a[ ],b[ ];
二维数组:
数组的元素类型 数组名 [ ][ ] int [ ] [ ] a,b;
数组的元素类型 [ ][ ] 数组名 int a[ ][ ],b[ ][ ];
注:与C/C++不同,java不允许在声明数组中的方括号内指定元素的个数,
例: int a[12]; int [12] a; 这是错误的
3.数组排序sort
我把它理解为类似C/C++中的头文件,它是Java中的包(java.util)
数组排序用了java.util包中的Arrays类
import java.util.Arrays;
Arrays.sort(数组名) (之前一直写的是Array所以一直错误)
4.成员变量与局部变量
成员变量Java会默认赋初值
局部变量则不会
两类变量重名的时候优先取局部变量的数值
5.构造方法
1)类似与C++中类的构造函数,但是C++中的类必须有构造函数,但是Java中如果没有声明定义构造方法的话,Java会自动生成一个无参数的构造函数。
2)当有构造方法时,无论有参数无参数,系统都不会生成构造方法
3)构造方法的重载,调用的话会根据不同的参数选择相应的方法(与C++类似)
6.静态方法与静态成员
1)静态方法中不可以直接调用非静态变量,如果需要调用,则要创建类的对象,再通过类的对象来调用非静态变量
2)在普通成员方法中,则可以直接访问同类的非静态变量和静态变量
3)静态方法中不能调用非静态方法,需要通过对象来访问非静态方法
float型数据常量后必须有后缀F/f 例: 22.76f 123.78f
double型数据常量后可以有后缀D/d,也可以没有
2.声明数组
一维数组:
数组的元素类型 数组名 [ ] int [ ] a,b;
数组的元素类型 [ ] 数组名 int a[ ],b[ ];
二维数组:
数组的元素类型 数组名 [ ][ ] int [ ] [ ] a,b;
数组的元素类型 [ ][ ] 数组名 int a[ ][ ],b[ ][ ];
注:与C/C++不同,java不允许在声明数组中的方括号内指定元素的个数,
例: int a[12]; int [12] a; 这是错误的
3.数组排序sort
我把它理解为类似C/C++中的头文件,它是Java中的包(java.util)
数组排序用了java.util包中的Arrays类
import java.util.Arrays;
Arrays.sort(数组名) (之前一直写的是Array所以一直错误)
//导入Arrays类 import java.util.Arrays; public class HelloWorld { public static void main(String[] args) { // 定义一个字符串数组 String[] hobbies = { "sports", "game", "movie" }; // 使用Arrays类的sort()方法对数组进行排序 Arrays.sort(hobbies); // 使用Arrays类的toString()方法将数组转换为字符串并输出 System.out.println(Arrays.toString(hobbies) ); } }
4.成员变量与局部变量
成员变量Java会默认赋初值
局部变量则不会
两类变量重名的时候优先取局部变量的数值
5.构造方法
1)类似与C++中类的构造函数,但是C++中的类必须有构造函数,但是Java中如果没有声明定义构造方法的话,Java会自动生成一个无参数的构造函数。
2)当有构造方法时,无论有参数无参数,系统都不会生成构造方法
3)构造方法的重载,调用的话会根据不同的参数选择相应的方法(与C++类似)
6.静态方法与静态成员
1)静态方法中不可以直接调用非静态变量,如果需要调用,则要创建类的对象,再通过类的对象来调用非静态变量
public class HelloWorld{ String name = "爸爸"; static String hobby = "爱你"; public static void print(){ HelloWorld hello = new HelloWorld(); System.out.println(hello.name); System.out.println(hobby); } }
2)在普通成员方法中,则可以直接访问同类的非静态变量和静态变量
public class HelloWorld{ String name = "爸爸"; static String hobby = "爱你"; public void print(){ System.out.println(name); System.out.println(hobby); } }
3)静态方法中不能调用非静态方法,需要通过对象来访问非静态方法
public class HelloWorld{ public void show(){ System.out.println("我是你爸爸"); } //静态方法 public static void print(){ System.out.println("我是你孩子"); } public static void main(String [] args){ //普通方法必须通过对象访问 HelloWorld hello = new HelloWorld(); hello.show(); //可以直接调用静态方法 print(); } }