eclipse
JDK
package关键字的使用 1.java定义类需要指定类名,但是把类名作为唯一标识,难免出现命名冲突的情况,这给团队间复用组建造成巨大困扰。 2.于是Java设计者引入包(package)的概念解决类名冲突的情况。于是Java规定,在定义一个时,必须指定包名。 3.package定义包名必须写在Java类最开始,在类名之前,语法结构:package 报名。示例代码如下:package main;public class Main {}package main2;public class Main {}分析:示例代码中定义两个包分别是main、main2,这样类的全名应是main.Main、main2.Main。还有不同的包名下可以有相同的类名。
包名的特点 1.包名可以显示出层次结构,一个包下可以包含其他许多子包,例如:package 包1.包2.包3....; 2.或者团队随心所欲的命名报名,仍然避免不了冲突的情况,所以Java默认规定,公司可以使用域名的倒置命名包名加之项目名,例如:org.apache.log4j.Logger。分析:org.apache.log4j多层包名,其中org.apache是域名倒置,log4j是项目名。见下图小编创建的包名。
import的关键字的使用 1.访问一个类时需要写出类的全称,包含包名,这样书写显得繁冗啰嗦,如:com.dragonhegler.main.Main main = new com.dragonhegler.main.Main(); 2.为了解决上述麻烦,java可以使用import关键字对类的全称进行声明,其语法为:import 包名+类名(即全局限定名); 3.使用import声明的类,可以直接使用,无需写出全名。示例代码如下:Main类:package com.dragonhegler.main;import com.dragonhegler.test.Test;public class Main { public static void main(String args[]) { Test test = new Test(); }}Test类:package com.dragonhegler.test;public class Test { public Test(){ System.out.println('Test类'); }}运行结果: Test类分析:从代码我们可以看出通过import声明类之后,在源文件中可以使用类名来访问。
封装的意义 1.封装内部细节,对外提供稳定可靠的服务; 2.便于外部代码的维护,降低耦合性; 3.便于团队管理,协调合作。
通过访问控制修饰符实现封装 1.什么是访问控制修饰符?访问控制修饰符指的是添加对类或方法的修饰,可以修改类或方法对外的访问权限; 2.访问控制修饰符的public和private,其中public修饰的类或方法可以在任何情况被人调用,而private修饰的成员只能在本类中被使用,对内实现了封装。示例代码如下:Test类:package com.dragonhegler.test;public class Test { private int seq; private String content; public String name; public Test(){ }}Main类:package com.dragonhegler.main;import com.dragonhegler.test.Test;public class Main { public static void main(String args[]) { Test test = new Test(); test.seq = 0;//编译错误 test.content = '访问';//编译错误 test.name = 'main类'; }}分析:从上面代码不能看出,其他类访问private修饰的成员变量,出现编译错误,而访问public修饰的成员没有问题。
protected访问控制修饰符 protected修饰的成员可以被子类和同包类被访问,言外之意其他包的类无法访问,示例代码如下:Test类:package com.dragonhegler.test;public class Test { protected int age; public Test(){ }}同包Test2类:package com.dragonhegler.test;public class Test2 { public static void main(String[] args) { Test test = new Test(); test.age = 21; }}Main类: package com.dragonhegler.main;import com.dragonhegler.test.Test;public class Main { public static void main(String args[]) { Test test = new Test(); test.age = 21;//编译错误 }}分析:上述代码实现非同包类访问protected修饰的成员,关于子类访问protected修饰的成员请自行尝试。
默认访问控制修饰符 所谓默认访问控制修饰符不写任何控制修饰符,其修饰的成员只可以被同包类调用。
访问控制修饰符修饰类 public和默认修饰符可以修饰类,public修饰类可以被任何类调用,默认修饰符修饰的类只能被同包类访问,protected和private修饰内部类。
运行示例代码,多敲多练。
喜欢Java的小伙伴可以与小编多多交流,让我们共同进步。