当前位置:首页 > 开发 > 编程语言 > 编程 > 正文

Object类,值域,泛型等总结(适合有基础的人看)

发表于: 2014-08-17   作者:百合不是茶   来源:转载   浏览:
摘要: java的作用域在编程的时候经常会遇到,而我经常会搞不清楚这个 问题,所以在家的这几天回忆一下过去不知道的每个小知识点   变量的值域;   package 基础; /** * 作用域的范围 * * @author Administrator * */ public class zuoyongyu { public static vo

java的作用域在编程的时候经常会遇到,而我经常会搞不清楚这个

问题,所以在家的这几天回忆一下过去不知道的每个小知识点

 

变量的值域;

 

package 基础;

/**
 * 作用域的范围
 * 
 * @author Administrator
 * 
 */
public class zuoyongyu {
public static void main(String[] args) {
zuoyongyu demo = new zuoyongyu();
// 定义变量
int x = 2;
System.out.println(" int x =" + x);

demo.count(x);
// 调用Count的方法后再打印,局部变量的范围是所在方法的范围,一旦离开这个方法作用域就消失
System.out.println("xx =" + x);
}

// 将变量的值传到方法中来,重新赋值,并打印
public void count(int x) {
x = 10;
System.out.println("x =" + x);
}

}

 

 

运行结果:

int x =2

x =10

xx =2

 

 

int x = 2;等价于C语言的全部变量,x = 10;等价于C语言的局部变量

JAVA没有全局变量,  局部变量只在所在的范围有用,

 

 

 

2,Object类强制转型的问题

package 基础;

/**
 * Object类的强制转换
 * 
 * @author Administrator
 * 
 * 当一个类没有显示扩展的是其他类,默认的还Object类,所有对象
 * 都是Object的多态形式,
 */
public class Demo {
public static void main(String[] args) {
//创建对象
Demo demo = new Demo();
//字符串赋值
String name = "pen";
//字符串赋给Object
Object obj = name;
System.out.println(name==obj);//引用的同一个对象所有为true
//将Object赋给字符串,需要强制转型,在对象流中经常会遇到
name = (String) obj;
}

}

 

 

 

3,泛型

         泛型的子类继承;

          在JAVA中子类的继承一般使用extends继承父类,或者是implements某些接口

          
        Number n = new Integer(12);Integer是Number的子类  
       这是向上转型,但是泛型有点变化
       
      List<String> list = new ArrayLsit<String>();//定义一个队列装字符串类型的
      List<Object> lo= list;
      第一行代码是正确的,第二行代码list<String>赋值给List<Object>,是错误的,在泛型中不可以这样做
       
      List<String> list1 = new ArrayLsit<String>();
      List<Integer> list2 = new ArrayLsit<Integer>();
      list1 = list2;//错误
      list2 = list1;//错误

 

       

       

      通配符:

        

        在泛型中进场会遇到不知道泛型的类型,需要最后才知道,这时我们可以将其定义为

     通配符,这样后面就好定义了

   

  List<?> c = new ArrayList<Object>();    
     c.add(new Object());//编译出错
     c.add(null);//这里不知道c的类型,所以不能再其中添加对象,唯一列外的就是null,它是所有类型的成员
   

   

     

 

Object类,值域,泛型等总结(适合有基础的人看)

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
  说实话自从走进Java的领域就觉得对语言的学习从语法到测试无非都是一样,我们现在要学的就是这
一个简单的集合类,可以使用任意对象进行添加,内容可以帮助理解泛型和如何创建一个自定义的泛型类
一、泛型产生的意义 泛型可以解决数据类型的安全性问题,它主要的原理是类声明的时候通过一个标示表
泛型(Generic Type)是JDK1.5引入的影响最深远、对语言本身变革最大的Java新特性。 从Java 1.0版本
1. 泛型类 class Gen<T> { private T t; public T get(){ return t; } public void set(T arg
这几天粗略的学习了java中的泛型,勉勉强强的把书中“泛型”这一章看完,其中很多的概念还不甚理解
讲解泛型之前,先看看如下的例子 List list = new ArrayList(); list.add(999); list.add("abc"); l
一、泛型的理解与简单使用 泛型是Java SE 1.5的新特性,泛型的本质是参数化类型,也就是说所操作的
一、Basic FAQ: 1. What are Java Generics? Java泛型是什么? Java Generics ara language featur
泛型代码和虚拟机 1)类型变量的擦除 虚拟机并没有泛型类型的对象,所有的对象都是普通类,即使是我
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号