zoukankan      html  css  js  c++  java
  • 自学java--6

    java.util:包含一些实用工具类和数类。

    针对String的“+”,“+=”是java中唯一被重载的操作符,在java中不允许重载其他操作符。

    String(引用类型)类对象是一个常量对象,它的值是不可改变的。只能改变他的引用值,但对象本身不变。

    StringBuffer类的append方法可以改变该对象的值,并可以用toString()方法转变为一个String类型(打印时可以默认调用)。

    如何不用第三变量来实现两个int类型的数据互换:x=x+y ;y=x-y;x=x-y;即可实现。

    函数的调用:java中都是值传递方式,即基本类型传递的是数据的拷贝(本地副本),而引用类型传递的是引用的拷贝。

    toString()方法是Object类的方法,常常被我们重写。

    Class类:

    public class Classmode {
    
        
        public static void main(String[] args) {
            /*
            //利用对象调用getClass()方法获取该对象实例
            point pt=new point();
            Class c1=pt.getClass();
            System.out.println(c1.getName());
            //利用Class类的静态方法forName(),用类名获取一个Class实例
            Class c2;
            try {
                c2 = Class.forName("point");
                System.out.println(c2.getName());
            } catch (ClassNotFoundException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            
            //运用。class的方式获得一个Class实例,
            Class c3=point.class;
            System.out.println(c3.getName());
            //对于基本数据类型的封装类可以用。TYPE来获取相对应的基本数据类型的Class实例
             Class c4=Integer.TYPE;
             System.out.println(c4.getName());
             Class c5=Integer.class;
             System.out.println(c5.getName());
             */
            
            //JVM会根据。class查看类是否被加载,一点加载就会形成对象
            /*
             System.out.println("before");
             new point();
             System.out.println("after");
             try
             {
                 Class.forName("line");
             }
             catch(Exception ex)
             {
                 ex.printStackTrace();
             }
             */
            try {
                Class c=Class.forName(args[0]);
                try {
                    //newInstance()方法只能调用缺损的构造函数,所以一点要注意。
                    point pointclass=(point) c.newInstance();
                    pointclass.output();
                } catch (InstantiationException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                } catch (IllegalAccessException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
            } catch (ClassNotFoundException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
    
    }
    class point
    {
        int x,y;
        public void output()
        {
            System.out.println("这是根据情况自己创建想要的实例对象");
        }
    
        static
        {
            System.out.println("loading point");
        }
        
    }
    class line
    {
        static
        {
            System.out.println("loading line");
        }
    }

    newInstance()方法只能调用缺损的构造函数,所以一点要注意,可以利用反射调用它的自定义构造函数来实现生成想要的对象。

    基本数据类型与它的封装类:

    public class basenumtype {
    
        /**
         * @param args
         */
        public static void main(String[] args) {
            // TODO Auto-generated method stub
           int s=3;
           Integer In=new Integer(s);
           int in=In.intValue();
           String str=In.toString();
           String str1="123";
           Integer In2=Integer.valueOf(str1);
           System.out.println(In2);
           String str2=Integer.toString(in);
           System.out.println(str2);
           //其他的都相同都相同,封装类是只读的。
        }
    
    }
  • 相关阅读:
    bzoj3530 [SDOI2014]数数
    bzoj3940 Censoring
    线性代数基础
    hdu1085 Holding Bin-Laden Captive!
    hdu1028 Ignatius and the Princess III
    luogu2000 拯救世界
    博弈论入门
    树hash
    luogu2173 [ZJOI2012]网络
    luogu1501 [国家集训队]Tree II
  • 原文地址:https://www.cnblogs.com/lovelifeloveme/p/3181037.html
Copyright © 2011-2022 走看看