7月20日--Java基础的回顾与总结

今天是就java基础知识进行培训,由于我原来已经学习过相关内容,我着重看了关于类的继承,接口和多态的内容。
关于继承:
很简单的就能理解继承的关系,不过关于继承的构造方法需要着重记录下:
public class car {
    protected Stringname;
    public car(){
    }
    public car(Stringname){
        this.name=name;
    }
}
其他就是要注意,引用类的时候注意前面例如,car mt =new 摩托车("哈雷");不能调用car中没有,而摩托车中新增加的方法,卡车 kc = new卡车("大奔");这样便可以。
关于接口:
接口与继承类似,而又不相同,一个类只能继承一个父类,而一个类能有多个接口,接口是一种特殊的抽象类,这种抽象类中只包含常量和方法的定义。
所谓抽象类:

含有抽象方法的类必须被声明为抽象类,抽象类必须被继承,抽象方法必须被重写。

抽象类不能被实例化。

抽象方法只需声明,而不需要实现。

关于多态:

car mt = new摩托车("哈雷");类似的写法,利用父类引用子类,可以方便的对对象进行更改。

然后对过去所学的java基础知识进行回顾:

常量 byte(8),short,int,long

实型flaot double

字符char   布尔boolean


重载(一个类定义定义多个相同名字但参数不同),重写(继承子类对父类方法重写)


static关键字,静态变量程序中的方法均可访问(计数器),静态方法是使用公共内存空间的,就是说所有对象都可以直接引用,不需要创建对象再使用该方法。

例如:

public class mainClass{ 
    intsum; 
    public static void main(Stringargs[]){ 
        sum=Test.z(1,2);//直接用类.方法或者属性就可以使用该方法或属性。 z为静态方法,Test是类
    }
}


权限修饰符:
priavte只能在类内部
default同个包
protected子类,同一个包
Public所有




String类:
charAt(i);返回第i个字符
length
indexOf(s)返回出现s的第一位置    indexOf(s,fromIndex)
equalsIgnoreCase(another)比较another忽略大小写
replace(old,new)替换
starsWith(),endWith()
toUpperCase(),toLowerCase()
substring(i) 返回字符串从i位置开始后的字符串  substring(a,b)
trim() 返回去掉开头结尾空格的字符串
valueOf() 将基本数据类型转换成字符串
split(s) 按分隔符分隔
StringBuffer可以对其值进行改变的字符串
append在StringBuffer后添加字符串
insert(i,s) 在指定位置添加指定字符串

基础数据类型包装类
Integer(int value)
Integer(Stirng s)

math,file类具体在常用类(2)

关于容器:
Collection接口
size(),isEmpty()
clear() 移除此 collection 中的所有元素
contains(Object)  是不是包含对象
add(Object) 添加
removed去除


其他方法在容器1
Iterator接口,Iterator是​统一的来遍历Collection里所有元素的方法
Iterator i = c.iterator();
while(i.hasNext()){
Name n = (Name)i.next();
System.out.println(n.getS()+"");
}   c为创建的对象

另一种写法for(Iterator i =c.iterator();i.hasNext();)
等同于for的增强版for(Object o :c)


set接口是Collection的子接口,元素没有顺序,而且不能重复
list接口是Collection的子接口,元素又顺序可重复

list的静态方法
sort(list)对list内元素排序
shuffle(list) 随机排序
reverse(list) 逆序排序
voidfill(List,Object)  用一个特定的对象重写整个List容器​
void copy(List dest,Listsrc)   将src List容器内容拷贝到destList容器​
intbinarySearch(List,Object) 对于顺序的List容器,采用折半查找的方法查找特定对象​

所有排序都实现了Comparable接口,该接口只有一个方法ComparaTo,实现了Comparable接口的类通常实现comparaTo方法从而确定该类对象的排序方式。​
必要是可以对该方法进行重写从而达到目的。

关于与Collection对应的map接口,键——值
Object put(Object key,Objectvalue);  //放入一对东西​,返回原key的value
Object get(Objectkey);  //通过key找到value​
Object remove(Objectkey);​  //去掉key对应的value,key随之也去掉
boolean containsKey(objectkey);​  //是不是包含key
boolean containsKey(objectvalue);
intsize();   多少对
boolean isEmpty()
void putAll​(Mapt);   把另一个Map所有值加进来​
void clear();​​
关于泛型和打包,具体参看容器2



流 
                                    字节流                            字符流​
输入流                    InputStream                      Reader​
输出流                    OutputStream                    Writer​
缓冲流套接在节点流上,为节点流提供了新的方法
BufferedReader(Reader in),writer
BufferedInputStream(InputStream in),outputstream
FileInputStream fis=newFileInputStream("d:\\A\\HelloWorld.java");
BufferedInputStream bis=newBufferedInputStream(fis);
流的内容和线程以后应用在做复习。

作业小程序:

猜拳游戏:

public class Test {
    public static void main(String[] args) {
        int i;

        System.out.println("请输入您要出的拳:" + "\n" + "1.石头" + "\n" + "2.剪刀" + "\n" + "3.布");
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        System.out.print("您出:");
        System.out.println(translation(n));

        i = (int) (Math.random() * 10) % 3 + 1;
        System.out.print("电脑出:");
        System.out.println(translation(i));
        System.out.println(Judge(n, i));
    }

    public static String translation(int m) {
        String s = null;
        if (m == 1) {
            s = "石头";
        } else if (m == 2) {
            s = "剪刀";
        } else {
            s = "布";
        }
        return s;
    }

    public static String Judge(int a, int b) {
        String jg = null;
        if (a == 1) {
            if (b == 1) {
                jg = "平局";
            }
            else if(b == 2) {
                jg = "您赢啦!";
            }else{
                jg = "您输啦!";
            }
        }
        if (a == 2) {
            if (b == 2) {
                jg = "平局";
            }
            else if(b == 3) {
                jg = "您赢啦!";
            }else{
                jg = "您输啦!";
            }
        }
        if (a == 3) {
            if (b == 3) {
                jg = "平局";
            }
            else if(b == 1) {
                jg = "您赢啦!";
            }else {
                jg = "您输啦!";
            }
        }
        return jg;
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值