OCA & OCP Notes
OCA
private methods are always hidden in a subclass.
variables may only be hidden, regardless of the access modifier.
The interface variable amount is correctly declared, with public and static being assumed and automatically inserted by the compiler
Although all variables in interfaces are assumed to be public static final, abstract classes may contain them as well
though an instance of an object that implements an interface inherits java.lang.Object, the interface itself doesn't; otherwise, Java would support multiple inheritance for objects, which it doesn't.
The trick here is that the method fly() is marked as private in the parent class Bird, which means it may only be hidden, not overridden. With hidden methods, the specific method used depends on where it is referenced.
Runtime exceptions can be thrown in any method
ArrayIndexOutOfBoundsException, IllegalArgumentException, and NumberFormatException are runtime exceptions.
the method called inside the try block doesn't declare an IOException to be thrown. The compiler realizes that IOException would be an unreachable catch block.
IOException is a subclass of Exception, but not a RuntimeException.
All array types are reference variables. Although int is a primitive type, int[] is still a reference type.
What data types allowed in a switch statement?
In a StringBuilder, the length can be less than or equal to the capacity. What is capacity??
NumberFormatException is RuntimeException ?
Overload: It prefers an auto boxed parameter over a vararg parameter.
Method has protected access, which means it can only be accessed from a subclass reference or in the same package.
Why abstract class can have constructor method since it cannot be instantiated??
IllegalArgumentException is a runtime exception.
Java is pass by value, reassignments to method parameters are not seen by caller.
An interface method can be overridden with an abstract method that follows the particular rules for method overriding.
A class implements two interfaces can have duplicate abstract and static method
A class implements two interfaces can only have a duplicate default method if the class override the default method.
The initial capacity of StringBuilder is 16.
byte is -127 , 128
Two -dimention arrays, the second length won’t limit the length??
int [][] ints2 = new int[1][1];
ints2[0] = new int[] {4, 5, 6};
NegativeArraySizeException
NumberFormatException is RuntimeException.
?? Interface I
I i = new I(){};
Public StringBuilder append(char[] str, int offset, int len)
Error/exception throw by JVM??
IllegalStateException (which is a RuntimeException) and AssertionError can be thrown programmatically. ??
A fully qualified means using the complete package details when access a Java class.
The native keyword is applied to a method to indicate that the method is implemented using native code using JNI (Java Native Interface) ??
What is keyword - transient ?
- transient is a Java keyword which marks a member variable not to be serialized when it is persisted to streams of bytes. When an object is transferred through the network, the object needs to be 'serialized'. Serialization converts the object state to serial bytes.
An outer class showing all types of inner classes that it can define: inner class, static nested class, local inner class, and anonymous inner class
Flavors of inner classes and their definitions
|
Type of inner class |
Description |
|---|---|
| Static or static nested class | Is a static member of its enclosing class and can access all the static variables and members of its outer class |
| Inner or member class | Is an instance member of its enclosing class. It can access all the instance and static members of its outer class, including private members. |
| Method local inner class | Is defined within a method. Local inner classes are local to a method. They can access all the members of a class, including its private members, but they can be accessed only within the method in which they’re defined. |
| Anonymous inner class | Is a local class without a name |
Table 3.3. Classes and methods from the Java API that use the Factory pattern
|
Class |
Method |
Description |
|---|---|---|
| java.util.Calendar | getInstance() | Gets a calendar using the default time zone and locale. |
| java.util.Arrays | asList() | Returns a fixed-size list backed by the specified array. |
| java.util.ResourceBundle | getBundle() | Overloaded versions of this method return a resource bundle using the specified base name, target locale, class loader, and control. |
| java.sql.DriverManager | getConnection() | Establishes and returns a connection to the given database URL. |
| java.sql.DriverManager | getDriver() | Attempts to locate and return a driver that understands the given URL. |
| java.sql.Connection | createStatement() | Overloaded version of this method creates a statement object for sending SQL statements to the database and generates ResultSet objects with the given type, concurrency, and holdability. |
| java.sql.Statement | executeQuery() | Executes the given SQL statement, which returns a single ResultSet object. |
| java.text.NumberFormat | getInstance() getNumberFormat() | Returns a general-purpose number format for the current default locale. |
| java.text.NumberFormat | getCurrencyInstance() | Returns a currency format for the current default locale. |
| java.text.NumberFormat | getIntegerInstance() | Returns an integer format for the current default locale. |
| java.util.concurrent.Executors | newFixedThreadPool() newCachedThreadPool() newSingleThreadExecutor() | Creates a thread pool. |
Bridge methods
The Java compiler might need to create additional methods, referred to as bridge methods, as part of the type erasure process.
===================================================
Figure 8.4. Comparing class Paths and interface Path
Figure 10.4. Main methods of class Thread
Figure 10.7. Identifying parts of runtime data that can be shared across threads
Table 11.2. Mapping of classes and interfaces from package java.util.concurrent and its corresponding package java.util analog
|
Package java.util.concurrent |
java.util analog |
|---|---|
| BlockingQueue | Queue |
| ArrayBlockingQueue | Queue |
| LinkedBlockingQueue | Queue |
| ConcurrentMap | Map |
| ConcurrentHashMap | HashMap |
| ConcurrentSkipListMap | TreeMap |
| CopyOnWriteArrayList | ArrayList |
| LinkedBlockingDeque | Deque |
Classes implemented in the fork/join framework
OCA & OCP Notes的更多相关文章
- OCA,OCP,OCM傻傻分不清?
可能大家知道OCA.OCP.OCM的关系是一个比一个难考,一个比一个含金量高,但是你知道具体的考试科目.考试方式.就业形势区别吗?不知道的话这篇通俗易懂的文章会让你一目了然. 区别一:含金量 ■OCA ...
- Miscellaneous Articles
标记一下,慢慢看 http://www.oracle-base.com/articles/misc/articles-misc.php Miscellaneous Articles DBA Deve ...
- 工作8年对技术学习过程的一些 总结 与 感悟 为什么有时迷茫、无奈 学习编程语言的最高境界最重要的是编程思想 T 字发展 学技术忌讳”什么都会“ 每天进步一点等式图 时间管理矩阵
工作这些年对技术学习过程的一些 总结 与 感悟(一) 引言 工作了8年,一路走来总有些感触时不时的浮现在脑海中.写下来留个痕迹,也顺便给大家一点参考.希望能给初学者一点帮助. 入门 进入计算机行业,起 ...
- DBA 招聘
数据库管理员(资深) 眼控科技 10-19万 72小时反馈 上海 6小时前 大专及以上 2年以上经验 普通话 25-35岁 绩效奖金 带薪年假 午餐补助 定期体检 年底双薪 五险一金 职位描述: 工作 ...
- 数据库之Oracle的介绍与使用20180620
/*******************************************************************************************/ 一.orac ...
- Oracle入门第一天(上)——简介与安装
一.Oracle介绍 Oracle 公司是全球最大的信息管理软件及服务供应商,成立于1977年 Oracle 公司因其复杂的关系数据库产品而闻名.Oracle的关系数据库是世界第一个支持SQL语言的 ...
- OCP/OCA Oracle 学习001
select * from TEST3 t select object_type, count(object_type) from user_objects group by object_type ...
- ocp 1Z0-042 121-178题解析
121. You want to create a new optimized database for your transactional production environment to be ...
- ocp 1Z0-042 1-60题解析
1. Because of a power outage,instance failure has occurred. From what point in the redo log does rec ...
随机推荐
- elasticsearch5.0.1集群索引分片丢失的处理
elasticdump命令安装 yum install npm npm install elasticdump -g 命令安装完毕,可以测试. 可能会报出nodejs的版本之类的错误,你需要升级一下版 ...
- AWS 架构最佳实践(十二)
可靠性 基本概念 可靠性 系统从基础设施或服务故障中恢复.动态获取计算资源以满足需求减少中断的能力 系统为最坏情况做好准备,对不同组件实施缓解措施,对恢复程序进行提前测试并且自动执行. 可靠性实践 测 ...
- http响应时长分析
curl -o /dev/null -s -w "time_namelookup:%{time_namelookup}::time_connect:%{time_connect}::time ...
- 性能测试监控:Jmeter+Collectd+Influxdb+Grafana
系统性能指标图示例: 采集数据(collectd)-> 存储数据(influxdb) -> 显示数据(grafana) InfluxDB 是 Go 语言开发的一个开源分布式时序数据库,非常 ...
- 手把手带你入门神秘的RxJava
1.什么是RxJava• Rx是Reactive Extensions的简写,翻译为响应的扩展.也就是通过由一方发出信息,另一方响应信息并作出处理的核心框架代码. • 该框架由微软的架构师Erik M ...
- PyTorch 常用代码段整理
基础配置 检查 PyTorch 版本 torch.__version__ # PyTorch version torch.version.cuda ...
- nohup 后台运行脚本,且可以实时查看日志
-u加在python上 python命令加上-u(unbuffered)参数后会强制其标准输出也同标准错误一样不通过缓存直接打印到屏幕. 这是因为python的缓存机制所决定的 如果是使用 nohup ...
- java FastJson的使用总结
1.前言 1.1.FastJson的介绍: JSON(javaScript Object Notation)是一种轻量级的数据交换格式.主要采用键值对({"name": " ...
- 题解 Luogu P1099 【树网的核】
这题是真的水啊... ------------ 昨天模拟赛考了这题,很多人都是O($n^3$)水过,但我认为,要做就做的足够好(其实是我根本没想到O($n^3$)的做法),然后就开始想O(n)的解法. ...
- python 之 前端开发( DOM操作)
11.47 DOM操作 查找节点: 11.471 直接查找 document.getElementById //根据ID获取唯一一个标签 document.getElementsByClassName ...