Java关键字和修饰符

目录

一、关键字

1. private关键字

2. this关键字

3. super关键字

二、修饰符

1. package

2.import


一、关键字

1. private关键字

private:私有的,即修饰的成员变量或成员方法,外界不能直接对其进行访问,要通过特性的方法来进行操作执行,
        被private修饰的成员,只能在本类进行访问,针对private修饰的成员变量,如果需要被其他类使用,提供相应的操作
        提供“get变量名()”方法,用于获取成员变量的值,方法用public修饰
        提供“set变量名(参数)”方法,用于设置成员变量的值,方法用public修饰

四种权限修饰符

修饰符同一个类中同一个包中子类无关类不同包的子类不同包的无关类
private        √
默认        √                      √
protected        √                       √            √     
public        √                       √            √                √

2. this关键字

当成员变量与局部变量名称一致时,this指定的变量为成员变量;同样,this跟随着对象,实例化对象时,哪个方法调用时,this就代表哪一个对象

3. super关键字

指向自己超(父)类对象的一个指针,而这个超类指的是离自己最近的一个父类

 this和super的三种用法

(1)普通的直接引用

this:指向当前对象本身,this.xxx用来引用当前对象的成员

super:指向当前对象的父类,这样就可以用 super.xxx 来引用父类的成员。

(2)子类中的成员变量或方法与父类中的成员变量或方法同名

this.成员变量/成员方法            访问的是当前类的成员变量/成员方法

注意:方法的形参如果与成员变量同名,不带this修饰的变量指的是形参,不带this修饰的变量指的是成员变量。

class Person {
    private int age = 10;
    public Person(){
    System.out.println("初始化年龄:"+age);
}
    public int GetAge(int age){
        this.age = age;
        return this.age;
    }
}
 
public class test1 {
    public static void main(String[] args) {
        Person Harry = new Person();
        System.out.println("Harry's age is "+Harry.GetAge(12));
    }
}

super.成员变量/成员方法         访问的是父类的成员变量/成员方法

class Country {
    String name;
    void value() {
       name = "China";
    }
}
  
class City extends Country {
    String name;
    void value() {
    name = "Shanghai";
    super.value();      //调用父类的方法
    System.out.println(name);
    System.out.println(super.name);
    }
  
    public static void main(String[] args) {
       City c=new City();
       c.value();
       }
}

(3)引用构造函数

super(参数):调用父类中的某一个构造函数(应该为构造函数中的第一条语句)。

this(参数):调用本类中另一种形式的构造函数(应该为构造函数中的第一条语句)。

class Person { 
    public static void prt(String s) { 
       System.out.println(s); 
    } 
   
    Person() { 
       prt("父类·无参数构造方法: "+"A Person."); 
    }//构造方法(1) 
    
    Person(String name) { 
       prt("父类·含一个参数的构造方法: "+"A person's name is " + name); 
    }//构造方法(2) 
} 
    
public class Chinese extends Person { 
    Chinese() { 
       super(); // 调用父类构造方法(1) 
       prt("子类·调用父类"无参数构造方法": "+"A chinese coder."); 
    } 
    
    Chinese(String name) { 
       super(name);// 调用父类具有相同形参的构造方法(2) 
       prt("子类·调用父类"含一个参数的构造方法": "+"his name is " + name); 
    } 
    
    Chinese(String name, int age) { 
       this(name);// 调用具有相同形参的构造方法(3) 
       prt("子类:调用子类具有相同形参的构造方法:his age is " + age); 
    } 
    
    public static void main(String[] args) { 
       Chinese cn = new Chinese(); 
       cn = new Chinese("codersai"); 
       cn = new Chinese("codersai", 18); 
    } 
}

二、修饰符

1. package

package是包,就是文件夹,用来管理类文件,区别类名的命名空间。  

示例:  package com.example.project;

包的作用

  • 1、把功能相似或相关的类或接口组织在同一个包中,方便类的查找和使用。

  • 2、如同文件夹一样,包也采用了树形目录的存储方式。同一个包中的类名字是不同的,不同的包中的类的名字是可以相同的,当同时调用两个不同包中相同类名的类时,应该加上包名加以区别。因此,包可以避免名字冲突。

  • 3、包也限定了访问权限,拥有包访问权限的类才能访问某个包中的类。

2.import

在Java中,import 关键字用于导入其他类或包中定义的类型,以便在当前源文件中使用这些类型。

示例:import 包名1.包名2.包名3/类名;

导入整个包

import com.runboo.package;

导入单个类

import com.runboo.MyClass;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值