面向对象编程(oop)
-
oop的本质:一类的方式组织代码,以对象的形式(封装)数据。
-
抽象
-
三大特性:封装、继承、多态。
回顾方法的定义
/** 修饰符 返回值类型 方法名()
* 方法体
* return 返回值;
*/
public String sayHello(){
return "Hello,world!";
}
public void say(){
return;
}
public int max(int a ,int b){
return a>b ? a : b ;
}
-
break: 跳出switch,结束循环。
-
return: 结束方法。
方法的调用
-
静态方法 static 类名.方法名();
-
非静态方法 实例化这个类 new 对象名.方法名();
//学生类
public class student{
//静态方法
public static void run(){
System.out.println("学生跑步了!");
}
//非静态方法
public void say(){
System.out.println("学生说话了!");
}
}
pubnlic class Dome{
public static void main(String[] args) {
//调用静态方法
student.say();
//调用非静态方法,实例化
Student stu = new Student();
stu.run();
}
}
-
扩展:静态方法能否调用非静态方法?
pubnlic class Dome{
public static void main(String[] args) {
//和类一起加载的
public static void a(){
b(); //报错
}
//实例化后,才存在
public void b(){
}
}
}
形参和实参
-
实际参数和形式参数的类型要一致。
-
值传递
public class Dome{
public static void main(String[] args) {
int a = 1;
change(a);
System.out.println(a); //a=1
}
public static void change(int a){
a = 10;
}
}
-
引用传递:对象,本质还是值传递
public class Dome{
public static void main(String[] args) {
Person per = new Person();
//打印名字
System.out.println(per.name);
//调用change()方法
Dome.change(per);
//再次打印
System.out.println(per.name); //李白
}
public static void change(Person person){
person.name = "李白";
}
}
//定义一个Person类,有个属性name
class Person{
String name;
}
本文深入探讨了面向对象编程(OOP)的核心概念,包括抽象、封装、继承和多态。通过实例展示了方法的定义、调用,以及静态与非静态方法的使用。同时,解释了形参和实参的概念,以及值传递和引用传递的区别。在程序设计中,了解这些基础将有助于更好地理解和应用OOP思想。

被折叠的 条评论
为什么被折叠?



