Java基础-面向对象

 

目录

  • 面向对象
  • 重载
  • 不定长参数
  • 访问权限修饰符

思维导图

 

具体内容

面向对象

  把整个需求按照特点、功能划分,将这些存在共性的部分封装成
  类(类实例化之后成为对象),让对象解决问题

  对象:万物皆为对象,具有自己的属性(变量)和行为(方法)

  特征

       封装,继承,多态,(抽象)

  成员变量

  定义:在类里方法外定义的变量,描述类的属性。

  作用域:整个类

  成员方法

  定义:定义在类里的方法

  【修饰符】【返回值类型】【方法名】(参数列表){}

  局部变量

  定义:定义在方法里的变量

  作用域:最近的一对{}里

  形式参数(形参)

  定义:定义函数时的参数

       实际参数(实参)

  定义:调用函数时传递的实际数据

       实例化对象/创建一个对象/类的实例化

  类名  对象名=new 类名(参数列表)

 Car car1=new Car();

  方法的调用

  1.实例化对象

  2.对象名.方法名(参数列表)

  在同类中的方法(非static修饰的方法)里调用另一个方法(非static修饰的方法)可直接调用

1  int age=23;
2     String str="awdw";
3     void print(){
4         System.out.println(age);
5         print(str);
6     }
7     void print(String str){
8         System.out.println(str);
9     }

  构造方法  

  每个类都有一个默认的构造方法

   【访问权限修饰符】【类名】(参数列表){}

    1、没有构造方法不可创建类

    2、可以重载默认的构造方法

    3、当创建有参数的构造方法,默认的构造方法将不再被自动创建,实例化对象时需要传参

       4、当有参的构造方法和无参的构造方法同时存在时,两种构造方法都可以被调用

    5、可创建多个有参数的构造方法(重载)

 

 1 public class Test5 {
 2    int num1=1;
 3    int num2=2;
 4    double d=3.3;
 5    String str="Java";
 6  public Test5(){
 7      System.out.println("这是一个无参的构造方法");
 8  }
 9  public Test5( int num1){
10      System.out.println("这是一个有参的构造方法");
11  }
12 
13     public static void main(String[] args) {
14         Test5 t=new Test5();
15         Test5 s=new Test5(1);
16     }
17 }

 

  运行结果:

  这是一个无参的构造方法
  这是一个有参的构造方法

 

重载

  重载规则:

    方法名相同,参数类型或数量不同

  

 1 public class Test5 {
 2    int num1=1;
 3    int num2=2;
 4    double d=3.3;
 5    String str="Java";
 6    double add(int num1,int num2,String str){
 7        double sum=num1+num2;
 8        return sum;
 9    }
10    double add(int num1,double d){
11        double sum=num1+d;
12        return sum;
13    }
14 }

不定长参数 

  格式:(参数类型...参数名)

  1,参数列表中,至多有一个不定长参数
  2,不定长参数必须在列表最后一位

       例如 public void test(String ...args){...} 这里test方法可以传入参数的情况是:

  1.不使用参数,如test()

  2.使用一个或多个参数,如test("1"); test("1","2");

  3.使用数组 test(new String[]{"1","2"});

访问权限修饰符

  public:公共的,公开的,在同一个工程下的所有类都可访问

  private:私有的,只能当前类可调用

  default:默认的,同一个包下可访问,子类不可访问

  protected:受保护的,同一个包下可访问,子类也可访问

学习心得

  内容很多,需要时间消化

 

posted on 2022-07-18 18:31  轮回dawd  阅读(35)  评论(0)    收藏  举报