Java基础学习:面向对象02
-
回顾方法的定义:
-
方法的定义:
-
修饰符
-
返回类型
-
方法名:注意规范,见名之意
-
参数列表:参数类型,参数名 (可变长参数)**
-
异常抛出:
-
数组下标越界异常:ArrayindexOutofbounds
-
-
break和return的区别:
-
break:跳出switch;结束循环;
-
return:代表方法结束;return后面也可以不带参数;
-
-
-
-
回顾方法的调用:
-
方法的调用:递归
-
静态方法
-
非静态方法
-
形参和实参
-
值传递和引用传递:
-
Java都是值传递;
-
-
this关键字
-
-
-
代码:静态方法,非静态方法
//静态方法,非静态方法
public class Demo02 {
public static void main(String[] args) {
/**
* 调用方法:有两种方式:
* 1,如果方法是静态方法(被static修饰):可以直接用类名. Student.say();
* 2,如果是非静态方法:只能实例化类(new对象),用对象调用
*/
Student.say(); //静态方法修饰,直接类名.
//实例化这个类 new
//对象类型 对象名=对象值;
Student student=new Student();
student.study();//非静态方法,对象.
}
/**
* 重点:
* 1,2个方法都没有被static修饰,方法可以直接调用;
* 2,2个方法都被static修饰,方法也可以直接调用;
*
* 3,如果一个方法被static修饰,一个没有:
* (3.1)则没有static的方法可以调用static方法;
* (3.2)有static方法不能调用非static方法;
*
*4,原因:static和类一起加载;所以非static方法只能等类实例化后,才会存在
*
*/
public static void a(){
}
public void b(){
a();
}
}
-
代码2:形式参数和实际参数
public class Demo03 {
public static void main(String[] args) {
Demo03 demo03=new Demo03();
int sum=demo03.add(1,2);
System.out.println(sum);
}
public int add(int a ,int b){
return a+b;
}
}
-
代码3:引用传递
//一个类里面可以有多个class,但是只能有一个public class
public class Demo05 {
public static void main(String[] args) {
//引用传递:一般是传递一个对象;本质还是值传递
Person person=new Person();
System.out.println(person.name);
System.out.println(\"--------------\");
change(person);
System.out.println(person.name);//haha
}
public static void change(Person person ){
//Person是一个对象:指向的--->Person person=new Person();这是一个具体的人,可以改变属性
person.name=\"haha\";
}
}
//定义了一个Person类,有一个属性name
class Person{
String name ;//默认值为Null
}
-
来源:https://www.cnblogs.com/xiangcai0522/p/15975417.html
本站部分图文来源于网络,如有侵权请联系删除。