1.什么是方法?
程序中:
需使用{}代码块将业务体包起来,并为之起一个名字:方法名
public static 返回值类型 方法名(形式参数列表){
...
return 结果;
}
2.for和while循环的区别
1)格式不同
for(初始化语句;条件表达式;控制体语句){ 普通for循环 /增强for循环(集合框架中使用)
循环体语句;
}
初始化语句:
while(条件表达式){
循环体语句;
控制体语句;
}
2)内存: for循环要比while更优一些:节省内存空间
当前for循环结束,当前里面局部变量:就被释放掉,节省内存!
while循环结束后,依然访问这个局部变量,消耗内存空间!
3)应用场景不同:
for循环:明确循环次数 :开发中 使用居多
for(;;){ //for的死循环使用不多
3.break和continue的区别
跳转控制语句
break:中断结束的意思,不能单独使用
只能在switch语句或者循环语句中使用 for/while... (使用居多)continue:结束当前循环,立即进入下一次循环
4.有返回值类型的方法的定义格式以及调用
有具体返回值类型的方法的定义:
固定格式
public static 返回值类型 方法名(形式参数列表){
业务代码;
return 结果;
}
调用:
推荐:赋值调用
返回值数据类型 变量名= 方法名(实际参数列表) ;
5.没有具体返回值类型的方法定义以及调用
固定格式:
public static void 方法名(形式参数列表){
要么输出/执行其他业务操作(排序)
}调用格式:单独调用
方法名(实际参数列表) ;
6.什么是方法重载?Overload
重载:方法名相同,参数列表不同,与返回值无关!
参数列表不同:
1)参数个数不同
2)参数类型不同(考虑类型的顺序)方法重载的目的:为了让某个功能的扩展性更高一些。
7.什么数组,数组的定义格式以及初始化有哪些
数组:可以存储多个元素的容器: 前提条件:数据类型必须一致!
定义格式:
数据类型[] 数组名称; int[] arr;
数据类型 数组名称[] ; int arr[];
初始化:
动态初始化:给定数组的长度,由系统默认分配元素的内容(int类型,默认值0;double:0.0,char:'\u000',boolean:false...)
数据类型[] 数组名称 = new 数据类型[数组长度] ;
数据类型 数组名称[] = new 数据类型[数组长度] ;静态初始化:给定数组的元素,系统默认分配长度!
原始格式:
数据类型[] 数组名称= new 数据类型[]{元素1,元素2,元素3....} ;简化格式:
数据类型[] 数组名称 = {元素1,元素2,元素3....} ;
8.Java中的内存分配有哪些?分别存储什么内容
栈:存储都是局部变量(在方法定义中或者方法声明上)
堆:new出来的东西,创建对象 (里面存储:"成员变量")
方法区:有哪些方法--分别存储在哪个类中---xxx.class()
字节码文件区:class:存储字节码文件对象
静态区:static : 以后: 存储的静态成员 (在面向对象中讲)
常量池 :String "字符串就是一个常量" (在常用类中)
9.数组如何获取元素内容以及长度
获取元素:
数组名称[索引值]
获取长度:
数组名称.length属性
10.遍历
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]+", ") ;
}
}
11.面向对象
1.面向对象是思想特点
1)更我们生活中的思想行为习惯
2)让复杂的事情简单化
3)角色发生变化:从执行者到指挥者
2.类和事物,以及对象
类:描述真实事物的一组属性和行为的集合对象:能够描述客观存在的具体的事物
类和事物是一一对应的
事物中的属性------ 类中:成员变量
事物中的行为------ 类中:成员方法
12.匿名对象
定义
就是没有名字的对象格式
new 类名() ;特点
匿名对象可以作为参数传递,只在堆内存开辟空间,使用完毕,立即被回收掉
13.局部变量和成员变量的区别
1)书写位置不同成员变量:类中方法外
局部变量:在方法定义中或者方法声明上
2)内存中的位置不同
成员变量:在堆内存中
局部变量:在栈内存中
3)生命周期不同
成员变量:随着对象的创建而存在,随着对象创建完毕,等待垃圾回收器回收对象
局部变量:随着方法调用存在,随着方法调用结束而消失
4)初始化不同
成员变量:在堆内存中由系统默认初始化
局部变量::无论是先定义还是直接初始化,必须在使用之前初始化,否则报错
14.封装
就是将一个类的属性细节私有化,保证数据的安全性,对外提供公共的访问方法
15.private关键字
(1)特点
属于权限的一种,范围最小的一种,只能在本类访问私有的成员(2)被private修饰的成员如何访问
间接通过公共的访问方法来访问
16.this关键字
定义
就是代表当前类的对象的地址值引用格式
this.成员变量名 = 局部变量;作用
解决局部变量隐藏了成员变量
8.构造方法
定义
1)构造方法名和类名一致2)没有具体的返回值类型
3)没有void
构造方法的目的
为了给类的成员的一些数据进行初始化构造方法的使用注意事项
1)没有给这个类提供任何构造方法时,系统会默认提供一个无参构造方法2)如果我们提供了有参构造方法任何一种,那么系统就不会在提供无参构造方法了
无参构造格式(示例)
public Phone(){
}
有参构造格式(示例)
public Phone(String brand,int price ,String color){
this.brand = brand ;
this.price = price ;
this.color = color ;}