美文网首页
Java之转型

Java之转型

作者: 吴世浩 | 来源:发表于2017-03-16 22:00 被阅读22次

一、浩言

无论怎样,该失去的,还是在失去。

二、背景

最近挺烦的,因为拿到一家公司的offer,但是公司需要银行流水,我报工资的时候报高了,哎,好郁闷,不知道怎么破,所以了,昨天到今天上午都很烦躁的,所以上面的语句就是不管怎样,该失去的还是会失去,只能顺其自然了,我个人觉得我现在拿到的是看能力,跟之前的工资没关。怎么感觉就是我自己的观点了。。。

三、内容

3.1 数组复制

最近补数据结构的知识,看ArrayList的东西,如下面代码

public static <T,U> T[] copyOf(U[] original, int newLength, Class<? extends T[]> newType) {
        T[] copy = ((Object)newType == (Object)Object[].class)
            ? (T[]) new Object[newLength]
            : (T[]) Array.newInstance(newType.getComponentType(), newLength);
        System.arraycopy(original, 0, copy, 0,
                         Math.min(original.length, newLength));
        return copy;
    }

这里面的代码刚刚看的时候涉及到转型问题,如果是Object类型,就是用Object对象,否则使用反射获取对象数组。
关于转型的我也好久没看了,这次就记载下来

3.2 数据转型

所以说说转型,直接上代码看看

package com.mouse.moon.obj;
public class Person {
    public void say(String something){
        System.out.println(something);
    }
}
package com.mouse.moon.obj;
public class Man extends Person {
    public void say(String something){
        System.out.println("man------>"+something);
    }
}
package com.mouse.moon.obj;
public class Main {
    public static void main(String args[]){
        Person person = new Man();
        person.say("person");
        //这里强转出错
//      Man man1 = (Man)new Person();
//      man1.say("man");
        Man man2 = (Man)person;
        man2.say("man2");
        Object obj = "123";
        String  Str =(String)obj;
        Object obj1 = 123;
        String  Str1 =(String)obj1;//报错
    }
}

上面的代码在Man man1 = (Man)new Person();这里会出错,因为类型不对,需要看指向的引用类型。
所以对比下面的字符串的转换,下面这个123的数字转换为String就会报错。

3.3 数据泛型

上面的T,U都是泛型的指定,有几个泛型就指定几个泛型

public <T,U> Map<T,U> getData(){
        return null;
}

public <T,K,V> Map<K,V> getSomething(Class<T> clz){
        return null;
}

所以了,这都是泛型,个人别没有什么很大区别

相关文章

  • Java之转型

    一、浩言 无论怎样,该失去的,还是在失去。 二、背景 最近挺烦的,因为拿到一家公司的offer,但是公司需要银行流...

  • 多态

    Java语言中的向上转型和向下转型, 1向上转型 (upcasting)子———>父 自动类型转换 2 ...

  • java基础之向上转型与向下转型

    一个事物的出现意味着他要去解决什么问题或者是衍生物,有时候大家不知道向上转型的意义,或者是说只是了解一个大概。那么...

  • java多态(重要O!)

    一、多态的语法 关于java语言中的向上转型和向下转型 1、向上转型(upcasting):子 -->父 2、向下...

  • 继承向上转型和向下转型和动态绑定

    向下转型:把引用变量转化为子类类型向上转型:把引用变量转化为父类类型 Base.java Sub.java 详细解...

  • Mac环境搭建 Selenium + java

    Selenium + java个人比较喜欢python 但是公司都在转型使用java 因此目前需要搭建java的...

  • java的多态性

    1、需有父子类关系,子类通过extends继承父类; 2、java多态性分为向上转型以及向下转型。 向上转型:...

  • Java向上转型、向下转型

    向上转型:父类指向子类对象Person p = new SuperMan(); 例子:Person person ...

  • java向上转型、向下转型

    整型,字符型,浮点型的数据在混合运算中相互转换,转换时遵循以下原则: 容量小的类型可自动转换为容量大的数据类型;b...

  • Java之向上转型,向下转型简单理解和实例

    开心一笑 【我吓唬他要分手,他一边看足球一边哼哼哈哈地说:“分吧分吧,东西和钱都归你,我什么也不要,只要你走的时候...

网友评论

      本文标题:Java之转型

      本文链接:https://www.haomeiwen.com/subject/mafsnttx.html