——Java-面向对象2——

前言

● 关键字this&superstatic

● 代码块

● 访问权限修饰符


一、关键字 this&super,static

this

this 是自身的一个对象,代表对象本身,可以理解为:指向对象本身的一个指针

当我们自定义一个类时,可以通过 this 关键字来找到我们需要引用的成员变量,这也是 this 的一般应用,同时,当类中出现与成员变量同名的形参时,可以通过 this 来区分,即变量名前有 this关键字的为该类的成员变量而非形参。


super

super 可以理解为是指向自己超(父)类对象的一个指针,而这个超类指的是离自己最近的一个父类。

通过super关键字我们就可以调用父类的成员变量和方法。

两者都可以通过 this(参数),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();
       }
}

运行结果:

Shanghai
China

static

static被称为静态,可以用来修饰类的属性,方法,代码块,内部类。 静态成员不依赖于类的特定实例,被类的所有实例共享,就是说 static 修饰的方法或者变量不需要依赖于对象来进行访问,只要这个类被加载, 静态成员就会被加载创建。

特点: 

static  所修饰的成员被所有对象共享,其在内存中只存在一个,而不像其他类成员可创建多个对象。

static  所修饰的方法称为静态方法,在本类中可直接被调用,在其它类中可通过(类名.静态方法名)调用。静态方法内部只能访问同样由 static 修饰的属性或方法,也不能有 thissuper 


模拟卖票
public class TicketSeller{
    private static int ticket=10;//票数只有一份 声明为静态的
    public static void sellticket(){
        ticket=ticket-1;
        System.out.println("卖票的静态方法");
    }
    public static void main(String[] args) {
    TicketSeller .sellticket();//没有创建对象也可以访问静态方法
    }
}

二、代码块

       代码块在类中声明,类似一个没有名称的方法体(代码块),代码分实例块和静态块 

实例块: 每次创建对象时自动调用

静态块: 类加载时自动调用,仅一次,与是否创建对象无关


三、访问权限修饰符

Java中有四个权限访问修饰符,权限从大到小依次为:

1)public 公共权限 修饰类、属性、方法。可以在任意类中访问

2)protected 受保护的权限 修饰属性、方法。可以在同包类访问,如果 不是同包类,必须是该类的子类才可以访问。

3)default 同包权限 修饰类、属性、方法。只能在同包的类访问

4)private 私有权限 修饰属性、方法。 只能在本类中

其实就是为了控制访问权限的大小,像一些私密成员或者信息就可以用 private 修饰用来保护信息安全

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值