包(package):包的命名:package cn.itcatst.chinamobile--------cn.公司域名.项目名称.模块名称
java中包的声明要使用package,并且以分号结束,必须还需要放在源代码的第一行
在编译时自动创建包:javac -d . 类名.java (. 表示当前目录)
运行时需要这样:java 包名.类名 (类的全称是:包名.类名)
了解:java中常用的包
1、java.lang 包含一些Java语言的核心类,如String、Math、Integer、System和Thread,提供常用功能,该包不用人工导入
2、java.awt包含了构成抽象窗口工具集(abstract window toolkits)的多个类,这些类被用来构建和管理应用程序的图形用户界面(GUI)。
3、java.net 包含执行与网络相关的操作的类
4、java.io 包含能提供多种输入/输出功能的类
5、java.util 包含一些实用工具类,如定义系统特性、使用与日期日历相关的类
导包: import java.util.*; //导入java.util包中所有类 (如果要声明包的话--导包要放在package的下一行)
访问修饰符---public/默认的/protected/private abstract/final/static
用在类中的: public/默认的/abstract/final
用在成员方法中的 public/默认的/protected/private abstract/final/static
用在成员变量的 public/默认的/protected/private final/static
用在构造方法的 public/默认的/protected/private
总结:类前面加public,类中的属性都是private,方法都是public,父类一般用abstract,父类中功能性方法一般用abstract
内部类(Inner class)
内部类是一个独立的类,在编译后内部类会被编译成独立的.class文件,但是冠名前面要加上外部类的名称和$符号;
内部类分为:成员内部类,静态内部类,局部内部类,匿名内部类
成员内部类:在其他地方要访问内部类中的成员必须要建立内部类的对象
外部类 外部对象 = new 外部类(构造方法); 外部类.内部类 内部对象 = 外部对象.new 内部类(构造方法);
如果内部类是私有的,那么可以通过getter方法来实现对内部类对象的访问,这样不会破坏封装
静态内部类:在外部类中访问静态内部类的情况有两种:
第一种:在外部类中访问静态内部类中的非静态成员 外部类.内部类 内部类对象 = new 外部类.内部类(构造方法);
第二种:在外部类中访问静态内部类中的静态成员 可以通过上一种,也可以直接外部类名.内部类名.成员
不能从内部类的对象中访问非静态的外部类对象
局部内部类:位置:定义在方法中的类
局部内部类只能在定义该内部类的方法内实例化,不可以在此方法外对其实例化。
局部内部类的对象不能使用该内部类所在方法的非final局部变量-----解释存在的生命周期长短
匿名内部类:没有名字的内部类-------形式上分为:1、继承式的匿名内部类;2、接口式的匿名内部类
前提: 匿名内部类必须继承一个父类或实现一个接口,并且只能是一个;
语法: new 接口(){} 相当于实现这个接口,匿名实现
new 父类(){} 相当于继承这个父类,匿名继承 主要是为了实现匿名多态
匿名内部类使用原则:1、匿名内部类不能有构造方法;2、匿名内部类不能定义任何静态成员、方法。
java中包和内部类
时间: 2024-12-12 15:13:47
java中包和内部类的相关文章
java中包容易出现的错误及权限问题
/* 3,权限在不同地方的体现: public protected default private 同一类中: ok ok ok ok 同一包中: ok ok ok 子类中: ok ok 不同包中: ok 在同一包中子类中是可以访问父类中默认权限(default)的方法,但是在不同包中不行! 在不同包中如果子类继承了父类,那么子类就可以访问父类中的protected方法! */ //import mytest.*; /* package mytest; public class DemoA{ p
转:java中包、类、方法、属性、常量的命名规则
必须用英文,不要用汉语拼音 1:包(package):用于将完成不同功能的类分门别类,放在不同的目录(包)下,包的命名规则:将公司域名反转作为包名.比如www.sohu.com 对于包名:每个字母都需要小写.比如:com.sohu.test;该包下的Test类的全名是:com.sohu.Test.java . 如果定义类的时候没有使用package,那么java就认为我们所定义的类位于默认包里面(default package). 2:类:首字母大写,如果一个类由多个单词构成,那么每个单词的首字
java中四种内部类的基本知识
java中的内部类有四种:1.静态内部类:作为类的静态成员,存在于某个类的内部. 静态内部类虽然是外部类的成员,但是在未创建外部类的对象的情况下,可以直接创建静态内部类的对象.静态内部类可以引用外部类的静态成员变量和静态方法,但不能引用外部类的普通成员. //静态内部类的测试程序public class Outter {static int a=1;int b=5;static void test(){ System.out.println("外部类的静态方法");}stati
java中包命名常见规则
做java的都知道java的包.类.接口.枚举.方法.常量.变量等等模型都有一套约定的命名规则! 学习每一种语言都应该学习对应语法和命名规则,以保持一个良好的编码风格.一来显示自己的专业.二来方便阅读和检查,快速供其他人参考,尽快理解项目代码结构! 今天首先谈谈一些常用的java package命名规则,以后有时间再写写java其他的一些规范! 首先我们该知道的是,java的包名都是由小写单词组成的,类名的首字母都是大写,也就是我们常用的驼峰写法,包路径一般都是对系统模板的定义与归类.这样看了包
java 中包的概念,常量,静态与继承
一.包的概念:创建,使用. 1.新建包: 最上面一行,之前不能再有其它代码了. package 包名; 注意:包名一般都有命名的规范.例如:com.itnba.maya.zy(从大到小). 2.使用包: import 包名.*; import 包名.类名; 例如:import com.itnba.maya.zy.*; 注意:import不要放在package的上面上 package com.itnba.maya.zy; import com.itnba.maya.zyy.*; //从别的包里引用
JAVA中包(package)的使用
暑假荒废了个把月,不过还是值得的,毕竟学会了游泳!好了,言归正传,由于JAVA中的文件是按类组织的,因此经常会用到包(package)的概念,下面举例子说明. JAVA是面向对象的语言,程序都是以类(class)为最小单位的,所有的程序都必须放在类定义里.JAVA源文件的后缀必须是 .java,通常JAVA程序源文件的主文件名可以是任意的,但如果JAVA程序源代码里定义了一个public类,则主文件名必须与该类相同,一般类名的首字母习惯大写.通常的习惯是每个源文件中只定义一个类,不同的类使用不同
Java之包及内部类
1.包的概述 包,其实就是文件夹. 包的作用是对类进行分类管理. 包的划分:按功能划分和按照模块划分. 2.包的定义及注意事项 包的定义:package 包名; 多级包名用.号隔开. 注意事项: package语句必须是程序的第一条可执行的代码. package语句在一个Java文件中只能有一个. 如果没有package,则默认表示无包名. package cn; public class HelloWorld { public static void main(String[] args){
java中包的理解
java之所以引入包的概念就是为了把类名的命名空间限制在包以内,所以在一个包中不能有同名类 通过import语句不仅能定位类,同时也会把类的命名空间引入 每个.java文件之所以只能有一个和文件名同名的public类,主要原因如下:.java文件只向包外开放一个类,也就是里面只能有一个public类,如果这个类和文件名同名,则我们可以只看.java文件的文件名就知道其为我们开放的public类,这样就可以在.java文件被编译成.class文件时,不知道类的内容就可以很容易地使用类.反过来讲,如
Java中包的基本管理与编译
在写程序的过程中,总会出现代码编译过关,但是项目偏偏报错的情况,遇到几种情况,都在此一一记录,希望以后少走弯路. 1.添加jsp文件的时候,会报错 Multiple annotations found at this line The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path - Line breakpoint:NewFile.jsp [line: 1] javax.