- 浏览: 97468 次
- 性别:
- 来自: 北京
-
文章分类
最新评论
-
wataxi:
第7, 8个说的好像不对,
#dd a{
te ...
我理解中的css样式表 -
show_time:
基本语句很详细呀
oracle辅导(1--3) -
yinxiangbing:
不错,很详细。。。
Struts-config.xml配置文件讲解 -
zhuyingya87:
真的不错。。
Struts-config.xml配置文件讲解 -
被判孤寂:
语句还可以,满全面。如果加上实例和图片,就更直观了
oracle辅导(1--1)
Java封装类
Java为每一个简单数据类型提供了一个封装类,每个简单数据类型可以封装成对象类型。
除int(Integer)和char(Character),其余类型首字母大写即成封装类类型名。double (Double), float(Float),long(Long), short(Short),byte(Byte),boolean(Boolean)
转换字符的方式:
int I=10;
String s=I+” ”;
String s1=String.valueOf(i);
Int I=10;
Interger I_class=new integer(I);
封装类.字符串.基本类型
Interger--------------------(Double(x.toString))--------------->Double
String ---------------------(Integer.valueOf() )---------------->Integer
Integer---------------------(x.toString() )-------------------->String
int-------------------------(100+””)------------------------->String
String----------------------(Integer.parseInt() )--------------->int
Integer---------------------(Integer.intValue() )--------------->int
学会查看java的帮助文档。先要关注使用方法的返回值类型,也就是要获得内容的类型,然后看方法名,JDK中的方法名基本上是见名知义,参数表,看需要什么才可以获得的需要的内容,也要看自己能够提供什么作为参数。
注意:“==”在任何时候都是比较地址,这种比较永远不会被覆盖。
程序员自己编写的类和JDK类是一种合作关系。(因为多态的存在,可能存在我们调用JDK类的情况,也可能存在JDK自动调用我们的类的情况。)
注意:类型转换中Double\Interger\String之间的转换最多。
(注:所有使用内部类的地方都可以不用内部类,但使用内部类可以使程序更加的简洁,便于命名规范和划分层次结构)。
。
内部类
内部类是指在一个外部类的内部再定义一个类。
*内部类可为静态,可用protected和private修饰。(而外部类不可以:顶级类只能使用public和default)。
*JAVA文件中没有publie class 可以类名和文件不同名
内部类的分类
成员内部类、
局部内部类、
静态内部类、
匿名内部类(图形是要用到,必须掌握)。
成员内部类
四个访问权限修饰符都可以修饰成员内部类。
内部类和外部类在编译时是不同的两个类,内部类对外部类没有任何依赖。
内部类是一种编译时语法,在编译时生成各自的字节码文件,内部类和外部类没有关系。
内部类中可以访问外部类的私有成员。
内部类是作为外部类的一个成员存在,与外部类的属性、方法并列。
内部类和外部类的实例变量可以共存。
在内部类中访问实例变量:this.属性
在内部类访问外部类的实例变量:外部类名.this.属性。
在外部类的外部访问内部类,使用out.inner.
成员内部类的特点:
1.内部类作为外部类的成员,可以访问外部类的私有成员或属性。(即使将外部类声明为private,但是对于处于其内部的内部类还是可见的。)
2.用内部类定义在外部类中的不可访问的属性。这样就在外部类中实现了比外部类的private还要小的访问权限。
注意:内部类是一个编译时的概念,一旦编译成功,就会成为完全不同的两类。
对于一个名为outer的外部类和其内部定义的名为inner的内部类。编译完成后出现outer.class和outer$inner.class两类。
3.成员内部类不能含有静态成员。
建立内部类对象时应注意:
在外部类的内部可以直接使用inner s=new inner();(因为外部类知道inner是哪个类,所以可以生成对象。)
而在外部类的外部,要生成(new)一个内部类对象,需要首先建立一个外部类对象(外部类可用),然后在生成一个内部类对象。内部类的类名是外部类类名.内部类类名。
例:
public class Test{
public static void main(String[] args){
Outer o=new Outer();
Outer.Inner in=o.new Inner();
Outer.Inner in=(new Outer).new Inner();
}
}
class Outer{
private int a
class Inner{
private int b;
public Inner(){
this.b=Outer.this.a
}
}
……
}
静态内部类
(注意:前三种内部类与变量类似,所以可以对照参考变量)
静态内部类定义在类中,任何方法外,用static class定义。
静态内部类只能访问外部类的静态成员。
静态内部类和成员内部类的区别
创建(new)一个静态内部类不需要外部类成员:这是静态内部类和成员内部类的区别。
静态内部类的对象可以直接生成:
Outer.Inner in=new Outer.Inner();
而不需要通过生成外部类对象来生成。静态内部类成为了一个和外部类平等的类。静态内部类不可定义为private。
例:
public class Test{
public static void main(String[] args){
Outer.Inner in=new Outer.Inner();
}
}
class Outer{
private static int a
static class Inner{
private int b;
public Inner(){
this.b=Outer.this.a
}
}
……
}
注意:当类与接口(或者是接口与接口)发生方法命名冲突的时候,此时必须使用内部类来实现。用接口不能完全地实现多继承,用接口配合内部类才能实现真正的多继承。
例子:
对于两个类,拥有相同的方法:
class People
{
run();
}
interface Machine{
run();
}
此时有一个robot类:
class Robot extends People implement Machine.
此时run()不可直接实现。
interface Machine
{
void run();
}
class Person
{
void run(){System.out.println("run");}
}
class Robot extends Person
{
private class MachineHeart implements Machine
{
public void run(){System.out.println("heart run");}
}
public void run(){System.out.println("Robot run");}
Machine getMachine(){return new MachineHeart();}
}
class Test
{
public static void main(String[] args)
{
Robot robot=new Robot();
Machine m=robot.getMachine();
m.run();
robot.run();
}
}
评论
static的内部类也不例外.
如果要在外部访问则不可定义为private了.
大侠费心了,有没有pdf文件可以提供下载啊?论坛的贴子滚来滚去的,看来极不方便啊。
呵呵,暂时还没有pdf的,等过几天做个电子书就可以让大家下载了,请稍等。
论坛的贴子滚来滚去的,看来极不方便啊。
发表评论
-
corejava辅导(2--3)
2008-12-13 08:37 1141java中的数组Array Java中的每一个数组就是都是 ... -
corejava辅导(17--3)
2008-12-03 17:53 848*1: 名为DoCallStuff类实现了Callable,S ... -
corejava辅导(17--2)
2008-12-03 17:51 870处理自定义注释的类 例: import java.lang.r ... -
corejava辅导(17--1)
2008-12-03 17:48 706JAVA5.0 的注释 (Annotation) 描述代码 ... -
corejava辅导(16--4)
2008-12-03 17:46 805泛型方法的定义 把数组拷贝到集合时,数组的类型一定要和集合 ... -
corejava辅导(16--3)
2008-12-03 17:44 760java5.0中的泛型 说明 增强了java的类型安全 ... -
corejava辅导(16--2)
2008-12-03 17:29 716可变长的参数 在java5.0中,可以使用一种变长参数,也就是 ... -
corejava辅导(16--1)
2008-12-03 17:25 856Java5.0的新特性 自动装箱和自动拆箱 自动封箱和 ... -
corejava辅导(15)
2008-12-03 17:18 745反射 反射,在运行时,动态分析或使用一个类进行工作。 类对 ... -
corejava辅导(14--4)
2008-12-03 17:15 799UDP socket 这种信息传输方式相当于传真,信息打包, ... -
corejava辅导(14--3)
2008-12-03 17:13 787TCP Socket TCP是Tranfer Con ... -
corejava辅导(14--2)
2008-12-03 17:10 689JAVA网络编程 网络基础知识 网络编程的目的就是指直 ... -
corejava辅导(14--1)
2008-12-03 17:08 688ObjectInputStream和ObjectOutputS ... -
corejava辅导(13--2)
2008-12-03 17:00 801BufferInputStream和BufferOutputS ... -
corejava辅导(13--1)
2008-12-03 16:56 792Java中的I/O 使用I/O流访问file中的内容。 J ... -
corejava辅导(12--3)
2008-12-03 16:53 737基本输入输出所使用的类的介绍: FileInputSt ... -
corejava辅导(12--2)
2008-12-03 16:51 724处理跨平台性 对于命令:File f2=new file( ... -
corejava辅导(12--1)
2008-12-03 15:56 755死锁问题 多线程不释放自己拥有的锁标记,而想申请其他线 ... -
corejava辅导(11--2)
2008-12-03 15:52 749共享数据的并发处理 多线程同时并发访问的资源叫做临界资源 ... -
corejava辅导(11--1)
2008-12-03 15:46 765Java多线程编程 进程,即运行中的程序,多任务操作系统中 ...
相关推荐
2. **corejava辅导(1--1)至(5--3)**:这些章节可能逐步介绍了Java语言的基础语法,如变量、数据类型、运算符、控制流程(条件语句、循环)、方法定义和调用、数组的使用以及字符串处理。 3. **corejava辅导(2-...
整体来看,《Java面试集锦: Core Java Essentials》是一本全面覆盖Java核心技术要点的面试辅导书籍。无论是对于即将参加面试的求职者,还是希望巩固Java基础知识的开发者,本书都提供了丰富的学习材料和面试问题,...
**3.2 corejava辅导(1--1)** - **基本数据类型**: 如int、double等。 - **字符串操作**: 字符串的创建和常用操作。 - **数组**: 数组的声明、初始化和遍历。 **3.3 corejava辅导(1--2)** - **循环结构**: for...
1. Java设计和编程基础:涵盖Core Java编程基础、Java设计原则、算法、模式等核心知识。 2. 数据库和Web前端技术:涉及数据库技术(如Oracle、MySQL、SQL优化和PLSQL开发)、Web前端技术(如H5、CSS3、JavaScript、...
7. **CoreJava辅导资料.zip**:这可能包含Java语言的基础教程或参考资料,包括类、对象、接口、异常处理、集合框架等内容,这些都是JavaWeb开发的基础。 8. **javaWeb基础技术辅导.zip**:这个文件很可能包含了详细...
- CPU: Intel Core i5 2.0 GHz - 内存: 2 GB - 硬盘: 250 GB #### 七、测试结果与分析 **测试项目:** 请假管理系统 **测试人员:** 麦城进 **测试结果:** - **系统操作登陆测试:** 用户登录成功后,能够正确跳转...
"CoreJava.rar"可能是一个包含Java核心编程资源的压缩文件,Java是一种广泛用于开发数据库应用程序的编程语言。在数据库应用中,Java可以用来编写DAO(数据访问对象)层,实现对数据库的操作,如CRUD(创建、读取、...
2. **后端开发**:后端通常基于Java、Python或.NET等语言,利用Spring Boot、Django或ASP.NET Core等框架进行开发。 3. **数据库管理**:MySQL、Oracle或SQL Server等关系型数据库用于存储学生、教师信息以及请假...