java学习第9天

时间:2021-07-12
本文章向大家介绍java学习第9天,主要包括java学习第9天使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

类和对象:

万物可被看为对象,去关注了解对象的过程被称为面向对象,对对象进行的编程。

类是现实生活中一类具有共同属性和行为的事物的抽象,类的特点:类是对象的数据类型,类是具有相同属性和行为得一组对象集合、

对象的属性:对象具有的各种特征,每个对象的每个属性都拥有特定的值。

对象的行为:对象能执行的操作

类是Java程序的基本组成单位。类的属性通过成员变量来体现。行为通过成员方法来体现。方法不含Static

类的定义:public class 类名{

   //定义成员变量

   //定义成员方法

}

对象的使用:

创建对象: 格式:类名对象名=new 类名();

Phone p= new Phone();

使用对象:

使用成员变量

格式:对象名.变量名 例:p.brand

使用成员方法

格式:对象名.方法名 例 p.call

案例:

package myproject;

public class Student {

   int age;

   String name;

   public void Study() {

      System.out.println("好好学习,天天向上");

   }

   public void doHonework() {

      System.out.println("敲代码");

   }

}

package myproject;

public class StudentTest {

   public static void main(String[] args) {

      Student a=new Student();

      a.age=19;

      a.name="xiaoming";

      System.out.println(a.name);

      System.out.println(a.age);

      a.doHonework();

      a.Study();

   }

}

对象内存图

多个对象指向不同的内存,多个对象指向相同的内存(其中一个对象值改变,另一个之也会发生改变)

成员变量和局部变量

区别(1)类中位置不同,成员变量在类中方法外,局部变量在方法内或方法声明上。(2)内存中位置不同,成员变量在堆内存,局部变量在栈内存。(3)生命周期不同:成员变量随着对象的存在而存在,随着对象的消失而消失,局部变量随着方法调用而存在,随着方法调用完就消失,(4)初始化值不同:成员变量有默认的初始值,局部变量没有默认的初始值,必须先定义,赋值,才能使用。

Private关键字

是一个权限修饰符,可以修饰成员(成员变量和成员方法),作用是保护成员不被别的类使用,被private修饰的成员只在本类中才能被访问。

针对private修饰的成员变量,如果需要被其他类使用,提供相应的操作

提供“get变量()”方法,用于获取成员变量的值,方法用public修饰,提供“set变量名(参数)方法,用于设置成员变量的值,方法用public修饰。

案例:

package myproject;

public class Student {

   private int age;

   String name;

   public void setAge(int a) {

      if(age>120||age<0) {

          System.out.println("年龄错误");

      }else {

          age=a;

      }

   }

   public int getAge() {

      return age;

   }

   public void Study() {

      System.out.println("好好学习,天天向上");

   }

   public void doHonework() {

      System.out.println("敲代码");

   }

   public void show() {

      System.out.println(age+" "+name);

   }

}

package myproject;

public class StudentTest {

   public static void main(String[] args) {

      Student a=new Student();

      a.setAge(19);

      a.name="xiaoming";

      a.show();

      a.doHonework();

      a.Study();

   }

}

This 关键字this 修饰的变量用于指代成员的变量,方法的形参如果与成员变量同名,不带this修饰的变量指的是形参,而不是成员变量,方法的形参没有与成员变量同名,不带this修饰的变量指的是成员变量。

什么时候使用this呢?

解决局部变量隐藏成员变量

This:代表所在的类的对象的使用

方法被哪个对象调用,this就代表哪个对象。

package myproject;

public class Student {

   private int age;

   private String name;

   public void setAge(int a) {

      if(age>120||age<0) {

          System.out.println("年龄错误");

      }else {

          age=a;

      }

   }

   public int getAge() {

      return age;

   }

   public void setName(String name) {

      this.name=name;

   }

   public String getName() {

      return name;

   }

   public void Study() {

      System.out.println("好好学习,天天向上");

   }

   public void doHonework() {

      System.out.println("敲代码");

   }

   public void show() {

      System.out.println(age+" "+name);

   }

}

package myproject;

public class StudentTest {

   public static void main(String[] args) {

      Student a=new Student();

      a.setAge(19);

      a.setName("xiaoming");

      a.show();

      a.doHonework();

      a.Study();

   }

}

封装:封装是面向对象的三大特征(继承,封装,多态)。

将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法实现对隐藏信息的操作和访问,成员变量private,提供对应的getXxx()/setXxx()方法

封装的好处:通过方法来控制成员变量的操作,提高了代码的安全性,把代码用方法进行封装,提高了代码的复用性。

构造方法:

概述:完成对象的初始化,与构造函数类似。

构造方法的注意事项:任何对象都有构造函数,在不声明构造方法使系统会默认声明构造方法。

原文地址:https://www.cnblogs.com/20203923rensaihang/p/15003434.html