📄 4.9.txt
字号:
一、内部类
1、内部类
public class N1 {
private int i =2;
//定义内部类
// 如果使用 private 修饰符,就不能在类外面访问
public class InnerClass {
public void fun(){
System.out.println("内部类可以访问外部类的属性 i= "+ i);
}
//下面的代码是错误的 非static内部类不能定义static成员
//public static void fun1(){}
//public static int i =9;
}
// 在内部创建内部类的对象
public void createInnerClass(){
InnerClass inner = new InnerClass();
inner.fun();
}
}
在类外创建内部类的对象:
public class TestInClassDemo {
public static void main(String[] args) {
// 在类的外部创建内部类的对象
//方法1
N1 outer = new N1();
N1.InnerClass inner = outer.new InnerClass();
inner.fun();
//方法2
N1.InnerClass inner1 = new N1().new InnerClass();
inner1.fun();
}
2、方法里的内部类
public class Ff {
public void fun(){
int j =8;
final int i = 9;
//在方法里定义内部类
class Inner{
public void funofinner(){
System.out.println("方法里的内部类,只能访问方法里的 final 变量 "+ i);
int k = i;
//下面的代码是错误的
//j =10;
}
}
Inner in = new Inner();
in.funofinner();
}
}
---------------------------------
public class TestInFunDemo {
public static void main(String[] args) {
Ff demo = new Ff();
demo.fun();
}
}
3.静态内部类
public class StaticInnerDemo {
int i = 8;
static int j = 9;
public static class InnerClass {
int k =10;
static int m = 99;
public static void staticfun(){
System.out.println("内部类可以访问外部类的static属性"+j);
//下面的代码是错误的
//System.out.println("内部类可以访问外部类的属性"+i);
}
public void fun1(){
System.out.println("内部类的非静态方法被调用");
}
}
public void outerFun(){
InnerClass in = new InnerClass();
in.fun1();
}
}
-------------------------------------------------------------
在类外创建静态内部类的对象
public class TestStaticInnerDemo {
public static void main(String [] args){
StaticInnerDemo.InnerClass.staticfun();
StaticInnerDemo.InnerClass in = new StaticInnerDemo.InnerClass();
in.fun1();
}
}
二、Integer类中的方法举例
public class IntegerDemo {
public static void main(String[] args) {
// 字符串--〉基本类型:
String str = "1";
int i = Integer.parseInt(str);
//基本类型 -- 〉引用类型
Integer in = new Integer(2);
//基本类型 -- 〉字符串
String mystr = String.valueOf(i);
//强烈不推荐使用下面的方法:
String temp = 1+ "";
}
}
-------------------------------------------------------------
public class SimpleDemo {
public static void main(String[] args) {
String str = "2";
System.out.println(str + 3);
int i = Integer.parseInt(str); //把字符串转换为基本类型
System.out.println(i + 3);
System.out.println("*************************************");
ArrayList list = new ArrayList(); //创建ArrayList的对象
Integer itg = new Integer(3); //创建Integer的对象,并为其赋初值
list.add(itg); //为list添加数据
Integer itemp = (Integer)list.get(0); //
//System.out.println(itemp +4);
int temp = itemp.intValue();
System.out.println(temp +4);
}
}
三、设计应注意的问题
1.类的设计
不建议设计一个万能类,通常设计一个功能或一组相关的功能的类;强烈不建议采用继承方式使用具体类;不建议使用引用类型数据成员;建议作为参数使用。
2.方法设计
不要写太长的方法,如果程序需要知道方法成不成功,用返回值;使用容器类或数组,把多个结果存放在返回值中;参数的个数不要超过5 个,参数是实现方法代码的必要条件;如果参数过多,可以用对象、List、数组作参数。
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -