8.1.1:类名冲突
有包的存在就有类名存在,类名定义多种,但功能不同
8.1.2:完整的类路径
1.双击打开工作区域是不一样的
C:\Users\隐入尘烟\eclipse-workspace
2.复制空间寻找包内内容
3.创建项目
8.1.3:创建包
在项目里创建包
如何在包里创建类
自动默认为pacakage1里
创建类的同时创建包
包:域名分层的作用:建立包时倒着写
在包内建立前期域名搭建
不能创建连包
只能使用创建的包
package com.baidu.www;
import java.util.Scanner;
public class Game1 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//从键盘获取一个整数
//输出整数
Scanner sc =new Scanner(System.in); //创建扫描器
System.out.println("请输入一个数");
int c1 =sc.nextInt();
System.out.println(c1);
sc.close();
}
}
package com.baidu.www;//包的位置
public class Game1 {
public static void main(String[] args) {
// TODO Auto-generated method stub
}
}
8.1.4:导入包
1.使用import导入包
2.使用import导入静态成员
package com.baidu.www;
import java.util.Scanner;
public class Game1 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//从键盘获取一个整数
//输出整数
Scanner sc =new Scanner(System.in); //创建扫描器
System.out.println("请输入一个数");
int c1 =sc.nextInt();
System.out.println(c1);
sc.close();
}
}
8.2:内部类
8.2.1:成员内部类
1.内部类简介
class OuteruClass{//外部类
class InnerClass{//内部类
}
例题代码如下
public class Car { //创建汽车类
//成员变量
private String brand; //汽车品牌
public Car(String brand) { //汽车类的构造方法,参数为汽车品牌
this.brand = brand; //给汽车品牌赋值
}
//成员内部类
class Engine{ //发动机类(内部类)
//成员变量
String model; //发动机型号
//构造方法
public Engine(String model) { //发动机类的构造方法,参数为发动机型号
this.model = model; //给发动机型号赋值
}
//成员方法
public void ignite() { //(发动机)点火方式
System.out.println("发动机"+this.model+"点火");
}
}
public void start() { //启动(汽车)方法
System.out.println("启动"+this.brand);
}
public static void main(String[]args) {
Car car =new Car("大众郎行");
car.start();
Car.Engine engine = car.new Engine("EA211");
engine.ignite();
}
}
使用this关键字
public class TheSameName {
private int x =7; //外部类的x
private class inner{
private int x =9; //内部类的x
public void doit() {
int x = 11; //局部变量x
x++; //调用局部变量
this.x++; //调用内部类的x
TheSameName.this.x++; //调用外部类的x
}
}
}
例题8.4
8.2.2:匿名内部类
例题代码如下
abstract class Dog{
String Color;
public abstract void move();
public abstract void call();
}
public class Demo {
public static void main(String args[]) {
Dog maomao = new Dog() {
public void move() {
System.out.println("四腿狂奔");
}
public void call() {
System.out.println("嗷呜~");
}
};
maomao.Color = "灰色";
maomao.move();
maomao.call();
}
}
例题8.5