TIJ 复习笔记6

访问控制与“最初的实现并不恰当”有关
  • 类的访问权限
  • 方法和成员的访问权限

包结构

  1. 一个文件如HelloWorld.java被称为一个编译单元。
  2. 包内必须有一个 HelloWorld的类,是public的类,其他类对外不可访问。
  3. package hello;将许多文件从属同一个群组;目录结构应该放在hello下面。
  4. import hello.HelloWorld 或者import hello.*; 就可以导入其他类,并进行使用。
  5. 目录结构配合package关键字,保证包名独一无二。 例如

    package net.mindview.simple;
    public Print {
    }

    文件应该结构为:X:\xxx\net\mindview\simple\Print.java
  6. import配合classpass 寻找包 ,X:\xxx 应该在CLASSPATH变量中。
  7. import static net.mindview.simple.Print.*; 可以导入静态方法,直接使用。

类的访问权限

public 的类同一个包可以直接使用,不同包需要import。
不可以是private或者protect。
非public的类,只有包访问权限,包外无法访问

方法和成员的访问权限

类内部,无论是哪种权限修饰符,都可以互相访问。

类外部,
public的方法/成员,可以被访问到。
(无论是对象访问,还是静态成员访问。无论包内,包外。)

private的方法/成员,不可以被外部(包内/包外)访问到。
(内部可以,内部的static方法也可以创建对象进行访问)

包访问权限,允许包内访问,包外无法访问。

protected,继承父类的方法,如果是public,就可以访问,如果是private,就不能访问。protect的方法可以访问。

看一下如下表格就一目了然:

名称包外包外继承包内继承包内
public可以可以可以可以
protected不可以可以可以可以
包访问不可以不可以可以可以
private不可以不可以不可以不可以

注:包内,protected方法的都可以访问到。

TIJ的记法,public都可以,private都不可以,包访问包内可以。protected给包外的继承打开了一扇小窗。


被访问的类如下: (再分别写四个类,包外、包外继承、包内继承、包内 访问 Test1的四个方法,可以得出上表的结论)

package access.solution;
import static net.mindview.util.Print.*;


public class Test1 {
    public void foo1(){
        print("public foo1");
    }
    protected void foo2(){
        print("protected foo2");
    }
    void foo3(){
        print("default foo3");
    }
    private void foo4(){
        print("private foo4");
    }
    public static void main(String[] args){
        Test1 a = new Test1();
        a.foo1();
        a.foo2();
        a.foo3();
        a.foo4();
    }
}

END

转载于:https://www.cnblogs.com/shalk/p/9769571.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
项目:使用AngularJs编写的简单 益智游戏(附源代码)  这是一个简单的 javascript 项目。这是一个拼图游戏,也包含一个填字游戏。这个游戏玩起来很棒。有两个不同的版本可以玩这个游戏。你也可以玩填字游戏。 关于游戏 这款游戏的玩法很简单。如上所述,它包含拼图和填字游戏。您可以通过移动图像来玩滑动拼图。您还可以选择要在滑动面板中拥有的列数和网格数。 另一个是填字游戏。在这里你只需要找到浏览器左侧提到的那些单词。 要运行此游戏,您需要在系统上安装浏览器。下载并在代码编辑器中打开此项目。然后有一个 index.html 文件可供您修改。在命令提示符中运行该文件,或者您可以直接运行索引文件。使用 Google Chrome 或 FireFox 可获得更好的用户体验。此外,这是一款多人游戏,双方玩家都是人类。 这个游戏包含很多 JavaScript 验证。这个游戏很有趣,如果你能用一点 CSS 修改它,那就更好了。 总的来说,这个项目使用了很多 javascript 和 javascript 库。如果你可以添加一些具有不同颜色选项的级别,那么你一定可以利用其库来提高你的 javascript 技能。 演示: 该项目为国外大神项目,可以作为毕业设计的项目,也可以作为大作业项目,不用担心代码重复,设计重复等,如果需要对项目进行修改,需要具备一定基础知识。 注意:如果装有360等杀毒软件,可能会出现误报的情况,源码本身并无病毒,使用源码时可以关闭360,或者添加信任。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值