类是具有共同特征的对象的集合,对象是类的实例。
比如 人是一个类 张三是其中一个对象。
类中包含方法和属性,方法可以理解为人的行为方式,属性可以理解为人的状态。
方法操作对象内部状态的改变,对象之间的相互调用也通过方法来完成。
以人为例创建一个类,并直接创建张三对象,构造方法则为其行为,name则是其属性:
public class Person{
String name;
int age;
String sex;
public Person(String name){
System.out.println("my name is:" + name);
}
public static void main(String[] args){ //String[] args 是命令行参数。
Person zhangsan = new Person("zhangsan");
}
}
一个java源文件中只能有一个public类。
静态方法只能调用静态方法。也就是带有static的方法。
例如:排序并二分查找一个数组中次小于或者等于 X 的的值。
public class search_and_sort{
public static void sort(int[] a){//选择排序
for(int i = 0; i < a.length; i++){
int max = i;
for(int j = i + 1; j < a.length; j++){
if(a[max] > a[j]) max = j;
}
if(max != i){
int t = a[max];
a[max] = a[i];
a[i] = t;
}
}
}
public static int search(int[] a, int x){ // 查找出次小于或者等于x的值。
int l = 0;
int r = a.length-1;
int mid = -1;
int lower = -1;
while(l<=r){
mid = (l + r)/2;
if(a[mid] <= x){
lower = mid;
l = mid + 1;
}
else { r = mid - 1;}
}
return lower;
}
public static void main(String[] args){ // main
int[] arr = {1,9,10,21,29,20,10,5,6,12,15};
sort(arr);
int l = search(arr,30);
System.out.println(arr[l]);
}
}