java构造器和方法的区别
构造方法不能通过创建对象来调用,这句话是对的还是错的?
构造方法不能通过创建对象来调用,这句话是对的还是错的?
1,java程序要运行,必须得有一个主入口方法,就是那个main方法,代码就会按着main方法里的代码顺序往下执行,执行完了程序就结束。
所以你看到的例子基本都是在测试类里创建对象,因为它要测试这个类的某些方法或者属性,所以必须创建这个类的对象,完成测试又必须在main法里。
2,对象在哪个类里都可以创建的,除了char,int,long,float,double,boolean这几个基本类型外,其他的任何java数据都是以对象的形式存在,正因为把一切都看做对象,所以java称做面向对象语言,任何地方都会操作到对象,自然任何地方都可以创建对象了。
3,构造方法是在创建对象的时候对其进行初始化,平时你自己写的类没有用构造方法,类一样没有出错,也能实现功能,这是因为任何类都会默认含有一个隐藏的无参构造方法。
之所以你觉得没有构造方法也一样,那是因为你所写的类太简单。
假如你有一个类Person,里面有个属性name,在创建这个类的对象时,这个name必须赋值,否则别人不知道这个对象是谁。
也许你会用Person person new Person();(张三);来实现,但是这样是不是太麻烦了呀,假如在使用时不小心又忘了()这一步呢,是不是又带来了不必要的麻烦呢。
所以你只需要指定一个构造方法,Person(String name){ name},这样在创建对象时就通过Person person new Person(张三);就自动给name属性赋值了,是不是变方便了呢,而且如果你不显示的把无参构造方法写出来,你再像Person person new Person()这样创建对象的话,系统就会报错。
写构造方法,就指定了创建对象的方式,这在对所创建的对象有一定要求时显得特别重要了,构造方法还可以重载,也就是说可以有多个构造方法。
数据结构与算法版本有区别吗?
数据结构与算法版本有区别。不同版本的数据结构与算法在内容上是基本相同的,主要的区别就是在程序语言的使用上可能不同,有些版本会用c语言,有些版本会用java,考生可以根据自己编程语言的掌握程度,选择合适的版本。