面向对象编程的本质就是:以类的方式组织代码,以对象的组织(封装
)数据。
抽象
三大特性:封装、继承、多态
从认识论角度考虑是先有对象后有类。
对象,是具体的事物。
类,是抽象的,是对对象的抽象。
从代码运行角度考虑是先有类后有对象的。
类是对象的模板。
静态方法有static的可以直接在主类中调用
非静态方法要实例化才能调用
公共类要和主类在同一文件中
形式参数和实际参数的类型要一致
public static void main(String[] args){
int add = add(1,2);// 实参
}
public static int add (int a ,int b){// 形参
return a+b;
}
public class Demo04{
public static void main(String[] args){
int a=1;
System.out.println(a);//1
Demo04.change(a);
System.out.println(a);//1
}
//返回值为空
public static void change(int a ){
a=10;
}
}
对象,本质还是值传递
public class Demo05{
public static void main(String[] args){
Person person = new Person();
System.out.pringln(person.name);//null
Demo05.change(person);
System.out.println(person.name);//陈
}
public static void change(Person person){
//person是一个对象:指向的--》Person person= new Person();这是一个具体的人可以改变
person.name="陈";
}
}
//定义了一个Person类,有一个属性:name
class Person{
String name;//null
}
类是一种抽象的数据类型,它是对某一类事物整体描述/定义,但是并不能代表某一个具体的事物。
对象是抽象概念的具体实例
类是抽象的它需要实例化。
类:静态的属性、动态的行为
一个类即使什么都不写,它也会存在一个方法。
构造函数基本上定义了两个规则。分别如下:
main方法在栈底部
对象是通过引用操作的:栈---》堆
原文:https://www.cnblogs.com/chenweijian/p/15213428.html