黑马程序员--java学习总结(11)

  1. ------<a href="http://www.itheima.com" target="blank">Java培训、Android培训、iOS培训、.Net培训</a>、期待与您交流! -------

----易混淆的概念

&和&&的区别:
&:无论左边结果是什么,右边都参与运算。
&&:左边为false时,右边就不参与运算,可以提高效率。

成员变量和局部变量的区别:
1.成员变量被定于在类中,而局部变量被定义在方法中,参数上和语句中。
2.成员变量的作用域是整个类,而局部变量的作用域是所在的那对大括号,大括号结束,局部变量就失去作用域。
3.成员变量存在于堆内存中,随着对象的产生而产生,消失而消失;而局部变量存在于栈内存中,随着所属区域的运行而存在,结束而释放。

成员变量和静态变量的区别:
1.成员变量所属于对象,所以也称为实例变量;而静态变量所属于类,所以也称为类变量。
2.成员变量存在于堆内存中,随着对象的产生而产生,消失而消失;而静态变量存在于方法区中,随着类的加载而存在,类的消失而消失。
3.成员变量只能被对象所调用;而静态变量可以被对象调用,也可以被类名直接调用。

构造函数和一般函数的区别:
1.两个函数的定义格式不同,一般函数在定义时需要返回值类型,而构造函数不定义返回值类型,而且函数名必须同类名一致。
2.构造函数是在对象被创建时就被调用,用于初始化,而且初始化动作只执行一次;一般函数,是对象被创建以后,需要调用才能执行,可以被执行多次。

构造函数和构造代码块的区别:
1.构造代码块是给所有对象进行初始化,也就是说,所有的对象都会调用一个构造代码块,只要对象一建立,就会调用这个代码块; 构造函数是给与之对应的对象进行初始化,它具有针对性。
2.构造代码块优先于构造函数执行。其实,构造代码块是所有类中的构造函数的相同部分,将这些相同部分提取出来封装成代码块,对象会先执行构造代码块,再执行对应的构造函数。

抽象类和接口的区别:
1.抽象类只能被继承,而且只能单继承;接口需要被实现,而且可以多实现。
2.抽象类中可以定义非抽象方法,子类可以直接继承使用;接口中都是抽象方法,需要子类去具体实现。
3.抽象类使用的是is a关系;接口中使用的是like a关系。
4.抽象类的成员修饰符可以自定义;接口中的成员修饰符是固定的。而且全都是public的。

throw和throws的区别:
throw用于抛出异常对象,后面跟的是异常对象,throw用在函数内。
throws用于抛出异常类,后面跟的是异常类名,可以跟多个,用逗号隔开,throws用在函数上。

编译时被检查的异常和运行时异常的区别:
编译时被检查的异常在函数内被抛出,函数上必须要声明,否则编译失败。声明的原因是需要调用者对该异常进行处理。
运行时异常如果在函数内被抛出,在函数上不需要声明。不声明的原因是不需要调用者处理,运行时异常发生,已经无法再让程序运行,所以不让调用者处理,直接让程序停止,有调用者对代码进行修正。

进程和线程的区别:
进程:正在进行中的程序,其实就是一个应用程序运行时的内存分配空间。
线程:其实就是进程中的一个程序执行控制单元,一条执行路径。进程负责的是应用程序的空间的标示。线程负责的是应用程序的执行顺序。且一个进程至少有一个线程在运行。

同步代码块和同步函数的区别:
同步代码块使用的锁可以是任意对象,相对灵活。
同步函数使用的锁是this,静态同步函数使用的锁是该类的字节码文件对象。

各种容器添加元素方法的区别:
StringBuffer和StringBuilder用的是append方法或insert(指定位置插入)方法;
Collection类型的集合容器用的是add方法;
Map类型集合容器用的是put方法;
properties容器用的是load方法;
注:数组的长度是固定的,不能增删。

StringBuffer和StringBuilder的区别:
StringBuffer线程安全,多线程操作时,用StringBuffer会提高安全性。
StringBuilder线程不安全,单线程操作时,用StringBuilder会提高效率。

集合和数组的区别:
1.数组的长度是固定的,而集合的长度是可变的;
2.数组可以存储基本数据类型和引用数据类型,集合只能存储引用数据类型;
3.数组里面的元素必须是同一种数据类型,而集合里面的对象可以是不同数据类型;

在TreeSet集合排序中使用Comparable接口和Comparator接口的区别:
1.如果要让元素自身具备比较性,则需要元素对象实现Comparable接口,覆盖里面的CompareTo方法;
2.如果要让集合具备比较性,则需要定义一个实现了Comparator接口的比较器,并覆盖里面的compare方法,并将该类对象作为实际参数传递给TreeSet集合的构造函数;

Collection和Collections的区别:
Collections是java.util下的一个类,是针对集合类的一个工具类,提供了一系列的静态方法,实现对集合的查找、排序、替换、线程安全化(将非同步集合转换成同步集合)等操作。
Collection是java.util下的一个接口,它是各种集合结构的父接口,继承于它的接口主要有Set和List,提供了关于集合的一些操作,如插入、判断、删除、遍历等。

Collection和Map的区别:
1.Collection一次存一个元素,Map一次存一对元素;
2.Collection是单列集合,Map是双列集合;
注:Map集合中存的是键值对,必须要保证键的唯一性。

高级for循环和传统for循环的区别:
高级for循环在使用时必须要明确被遍历的目标。这个目标可以是Collection集合或者数组,如果遍历的是Collection集合,在遍历过程中还需要对元素进行操作,比如删除,则需要使用迭代器。如果遍历的是数组,还需要对数组元素进行操作,建议使用传统for循环,因为可以定义角标,通过角标操作元素。如果只为了遍历获取,可以简化成高级for循环,它的出现简化了书写。

close()和flush()的区别:
flush():将缓冲区的数据刷新到目的地后,流还可以使用。
close():将缓冲区的数据刷新到目的地后,流就关闭了,该方法用于结束调用的底层资源,所以这个动作一定要完成。

原文件会不会被覆盖的问题:
1.当用FileWrite和FileOutputStream的构造方法关联文件(会自动创建文件)时,如果参数中带的是flase或者是没有boolean的参数时,会将相同路径下原来的同名文件覆盖;如果参数是true,则只会续写(也就是从原始数据的尾部开始写)原文件,而不会覆盖。
2.File中的createNewFile()方法也不会覆盖,如果有同名文件,则不创建,如果没有,则创建。
3.其次,RandomAccessFile raf=new RandomAccessFile("random.txt","rw");当参数为"rw"时表示:当这个文件不存在时,会创建该文件,如果文件已存在,则不会创建,也不会覆盖原文件,只是将数据写在原文件上(修改)。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
东南亚位于我国倡导推进的“一带一路”海陆交汇地带,作为当今全球发展最为迅速的地区之一,近年来区域内生产总值实现了显著且稳定的增长。根据东盟主要经济体公布的最新数据,印度尼西亚2023年国内生产总值(GDP)增长5.05%;越南2023年经济增长5.05%;马来西亚2023年经济增速为3.7%;泰国2023年经济增长1.9%;新加坡2023年经济增长1.1%;柬埔寨2023年经济增速预计为5.6%。 东盟国家在“一带一路”沿线国家中的总体GDP经济规模、贸易总额与国外直接投资均为最大,因此有着举足轻重的地位和作用。当前,东盟与中国已互相成为双方最大的交易伙伴。中国-东盟贸易总额已从2013年的443亿元增长至 2023年合计超逾6.4万亿元,占中国外贸总值的15.4%。在过去20余年中,东盟国家不断在全球多变的格局里面临挑战并寻求机遇。2023东盟国家主要经济体受到国内消费、国外投资、货币政策、旅游业复苏、和大宗商品出口价企稳等方面的提振,经济显现出稳步增长态势和强韧性的潜能。 本调研报告旨在深度挖掘东南亚市场的增长潜力与发展机会,分析东南亚市场竞争态势、销售模式、客户偏好、整体市场营商环境,为国内企业出海开展业务提供客观参考意见。 本文核心内容: 市场空间:全球行业市场空间、东南亚市场发展空间。 竞争态势:全球份额,东南亚市场企业份额。 销售模式:东南亚市场销售模式、本地代理商 客户情况:东南亚本地客户及偏好分析 营商环境:东南亚营商环境分析 本文纳入的企业包括国外及印尼本土企业,以及相关上下游企业等,部分名单 QYResearch是全球知名的大型咨询公司,行业涵盖各高科技行业产业链细分市场,横跨如半导体产业链(半导体设备及零部件、半导体材料、集成电路、制造、封测、分立器件、传感器、光电器件)、光伏产业链(设备、硅料/硅片、电池片、组件、辅料支架、逆变器、电站终端)、新能源汽车产业链(动力电池及材料、电驱电控、汽车半导体/电子、整车、充电桩)、通信产业链(通信系统设备、终端设备、电子元器件、射频前端、光模块、4G/5G/6G、宽带、IoT、数字经济、AI)、先进材料产业链(金属材料、高分子材料、陶瓷材料、纳米材料等)、机械制造产业链(数控机床、工程机械、电气机械、3C自动化、工业机器人、激光、工控、无人机)、食品药品、医疗器械、农业等。邮箱:market@qyresearch.com

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值