(本系列同步更新于 个人博客小站)
本系列整理Java相关的笔试面试知识点,其他几篇文章如下:
1、Java变量
Java中主要有如下几种类型的变量- 局部变量
- 类变量(静态变量)-- 属于类
- 成员变量(非静态变量)-- 属于对象
2、关于枚举
package com.scu.lly;
public class EnumTest {
/**
* 颜色枚举
*/
enum ColorEnum{
RED,
GREEN,
BLUE
}
/**
* 性别枚举
* 可用中文字符,不能单独使用数字
* (枚举值组成:字母、下划线)
*/
enum SexEnum{
男,
女,
MAN,
WOWAM
}
public class EnumTest {
/**
* 颜色枚举
*/
enum ColorEnum{
RED,
GREEN,
BLUE
}
/**
* 性别枚举
* 可用中文字符,不能单独使用数字
* (枚举值组成:字母、下划线)
*/
enum SexEnum{
男,
女,
MAN,
WOWAM
}
/**
* 1、带有构造方法的枚举,构造方法为只能为private(默认可不写private);
* 2、含带参构造方法的枚举,枚举值必须赋值;
* 3、枚举中有了其他属性或方法之后,枚举值必须定义在最前面,且需要在最后一个枚举值后面加分号";"
*/
enum CarEnum{
BMW("宝马",1000000),
JEEP("吉普",800000),
MINI("mini",200000);
private String name;
/**
* 从这里可以看出虽然枚举值不能直接由数字组成,但是我们可以给该枚举类添加一个int类型的值,通过构造方法给其赋值,相当于间接的可以使用数值
*/
private int price;
private CarEnum(String name,int price){
this.name = name;
this.price = price;
}
//添加setter、getter方法
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getPrice() {
return price;
}
public void setPrice(int price) {
this.price = price;
}
}
/**
* 由于枚举类都继承了Enum类,故我们定义的enum都不能在继承其他类了,但是可以实现其他接口
*/
enum CarSetEnum implements Car{
BMW("宝马"),
JEEP("吉普"),
MINI("mini");
private String name;
private CarSetEnum(String name){
this.name = name;
}
//添加setter、getter方法
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public void setCarName(String name) {
this.name = name;
}
}
public static void main(String[] args){
ColorEnum color = ColorEnum.BLUE;
switch(color){
case RED:
System.out.println("红色");
break;
case GREEN:
System.out.println("绿色");
break;
case BLUE:
System.out.println("蓝色");
break;
}
getSelectedColor(color);
//测试含构造方法的枚举
System.out.println("吉普信息:"+CarEnum.JEEP.getName() + ":" +CarEnum.JEEP.price);
for(CarEnum car : CarEnum.values()){
System.out.println(car.name);
System.out.println(car.getPrice());
}
//测试实现接口的枚举
CarSetEnum.BMW.setName("加长宝马");
System.out.println(CarSetEnum.BMW.getName());
}
public static ColorEnum getSelectedColor(ColorEnum color){
ColorEnum result;
switch(color){
case RED:
System.out.println("红色");
break;
case GREEN:
System.out.println("绿色");
break;
case BLUE:
System.out.println("蓝色");
break;
}
result = color;
return result;
}
interface Car{
public void setCarName(String name);
}
}
3、访问控制修饰符
修饰符 | 说明 |
---|---|
private
|
私有的,在同一类内可见。
|
默认没写 | 在同一包(包括子类和非子类)内可见。默认不使用任何修饰符。 |