面向对象和面向过程的主要区别是,面向对象是指挥对象去做过程。比如需要打一个小时代码这件事,面向对象就是指让对象A打一个小时代码,A需要去面对打代码这个过程。而如果自己去打一个小时代码,自己就是对象,去面对打一个小时代码这个过程。 尝试使用了xmind工具来整理概念性的学习内容。 复习了一维数组的应用。 1:this关键字代表什么? Java中规定,在书写一个标准类的时候,为了防止成员变量名称和局部变量名称一致,提供了一个关键字 2:static关键字是什么?有什么特点?什么时候用呢? 针对多个对象共有一个成员变量,Java提供的关键字 特点:1)随着类的加载而加载 想一想:main() ---->public static void main(String[] args){} 2)static修饰的变量/方法,优先与对象存在! 回想:对比Student s = new Student(); 完成了哪些事情
3)被static修饰的具有共享,共用(多个对象共同访问同一个static修饰的成员变量) 什么时候去使用static关键字... 举例:类似的这些,都是用static修饰 班级编号(共享) 饮水机 (共享) 水杯(不能被共享的) 4)被static修饰的变量或者成员方法,可以直接被类名调用 (使用API,很多成员方法都是static修饰)3:main方法各种修饰符及参数的解释?
public static void main(String[] args): jvm识别的程序的入口 public :权限修饰符,公共的,公开的,保证访问权限足够大 static:静态修饰,和类有关系,优先对象存在 void:由jvm调用,没有具体的返回值类型 ,使用void代替 main:方法名, 编程语言,大部分都是有一个程序的入口,Java叫main(主方法) String[] args: 接收字符串数组,参数名args,4:使用Jdk提供的帮助文档学习下Math类中的random()方法 使用Math类的这个方法获取1-100之间的随机数(直接使用random()方法完成即可!) 5.成员方法的分类有哪些? 根据返回值类型分为具有明确返回值方法与返回值为void类型的方法 根据形式参数分为无参方法和有参方法 6.公司有很多个员工,员工都有姓名,年龄,工号这些属性,他们都有coding()敲代码的功能,请使用面向对象方式定义 对应的员工类并且进行测试(标准类书写规则class Test00{ public static void main(String[] args){ Staff s = new Staff(); s.name = “高圆圆”; s.age = 20 ; s.idnum = 7788; s.coding(); System.out.println(s.name+"–"+s.age+"—"+s.idnum); Staff s2 = new Staff(); System.out.println(“高圆圆”+"—"+20+7788); s2.coding(); } }
class Staff{ String name; int age; int idnum; public void coding(){ System.out.println(“敲代码”); } public Staff(){}; public Staff(String name, int age , int idnum){ }
})
7.什么是构造方法? 构造方法的作用是什么,请使用代码进行举例? 构造方法:(属于一个类的成员) 1)没有具体的返回值类型 2)连void都没有 3)方法名和类名相同 作用:就是给当前类进行数据初始化! 8.下面那哪些情况属于方法重载(c)? A:方法名相同,参数类型与个数不同 B:方法参数类型相同 C:方法参数个数相同 D:方法返回值类型相同 E:方法名相同,方法参数类型与个数也相同 9.下列代码输出的结果是(c) public class Main{ public static void main(String[] args){ int n = 100 ; int m = 200 ; System.out.println(f(n,m)) ; System.out.println(n) ; }
public static int f(int m,int n){ n = m + n ; return n ; }}
A.300 300 B.100 100 C.300 100 D.100 30010.自定义数组,将数组进行冒泡排序,并打印 class Test00{ public static void main(String[] args){ int[] arr ={78,45,96,35,65,47,95}; System.out.println(“排序后”); bubbleSort(arr); printArray(arr); }
public static void bubbleSort(int[] arr){ for(int x = 0;x<arr.length-1;x++){ for(int y = 0; x<arr.length-1-x;y++){ if(arr[y]>arr[y+1]){ int temp = arr[y]; arr[y] =arr[y+1]; arr[y+1]=temp; } } } } public static void printArray(int[] arr){ System.out.print("["); for(int x = 0;x<arr.length;x++){ if(x == arr.length-1){ System.out.println(arr[x]+"]"); }else{ System.out.print(arr[x]+","); } } }}