【再探JAVA】Split & 继承实现_Oracle赛前试考
2015-04-11 11:25
302 查看
今天Oracle来了一次赛前试考呢~
吾辈的JAVA算是漏洞百出的菜鸟了,也凭着坚毅的意志(和高人@ZoeCur 的指点)完成了试考呢~
选择题看似是问分隔之后有多少份,但实际上是问text.split的作用——
先给个完整源码吧:
Invalid escape sequence (valid ones are \b \t \n \f \r \" \' \\ )
关于Split的使用,MSDN上给出了这样的源码(Language:C#): 【看到了不错的点子,可以用这个去过CodeHunt那道AEIOU的题了】
返回的数组元素中不包含分隔符字符。
如果此实例不包含 separator 中的任何字符,则返回的数组由包含此实例的单个元素组成。
如果 separator 参数为 null 或不包含任何字符,则采用空白字符作为分隔符。 空白字符由
Unicode 标准定义,如果将它们传递给Char.IsWhiteSpace 方法,将返回 true。
separator 的每一个元素都定义一个单独的分隔符字符。 如果两个分隔符相邻,或者在此实例的开头或末尾找到分隔符,则相对应的数组元素包含 Empty。 下表提供了示例:
为啥我敢在这写……就不怕错了误导大家嘛?
哈哈~~ 每道题我都从【等待评判中】一直等到了【完全正确】才写的下一题哦~
嘛,话不多说,这次大概能学到东西的就是继承与实现了(前两道抄答案的题目如果都有人写错我就没话说了哟~)
先给了一个抽象类,里头一个抽象函数,让你写一个公开矩形类继承它,需要构造函数和长宽的Get\Set函数
抽象类里的东西继承类里你要是不给它写出来,你告诉我你Eclipse老提醒你要加abstract在你的public class前头,
想想看,让你写的就是实现它要不然Shape类里抽象它干啥?
关于Get\Set,Eclipse里有一键添加的快捷键哦~ 不要告诉别人我没提醒你哦~
构造函数,花括号里的东西应该会写吧……
为了方便理解还是贴个代码好了:
然后是要一个接口的实现类……
当时就懵掉了,啥,接口是啥,实现类又是啥,能吃么?
后来问了大神,啊,关键字implements,然后构造函数是要new一个IList,那就声明一个IList,然后为它new一个写在构造函数里就好啦~
接口如下:
实现类如下:
吾辈的JAVA算是漏洞百出的菜鸟了,也凭着坚毅的意志(和高人@ZoeCur 的指点)完成了试考呢~
选择题看似是问分隔之后有多少份,但实际上是问text.split的作用——
先给个完整源码吧:
package Test01; public class Test { public static void main(String[] args) { String text = "Welcome to Java contest"; String[] words = text.split("\s"); System.out.println(words.length); } }编译时,在“\s"的部分会报错:
Invalid escape sequence (valid ones are \b \t \n \f \r \" \' \\ )
关于Split的使用,MSDN上给出了这样的源码(Language:C#): 【看到了不错的点子,可以用这个去过CodeHunt那道AEIOU的题了】
using System; public class SplitTest { public static void Main() { string words = "This is a list of words, with: a bit of punctuation" + "\tand a tab character."; string [] split = words.Split(new Char [] {' ', ',', '.', ':', '\t' }); foreach (string s in split) { if (s.Trim() != "") Console.WriteLine(s); } } } // The example displays the following output to the console: // This // is // a // list // of // words // with // a // bit // of // punctuation // and // a // tab // character
返回的数组元素中不包含分隔符字符。
如果此实例不包含 separator 中的任何字符,则返回的数组由包含此实例的单个元素组成。
如果 separator 参数为 null 或不包含任何字符,则采用空白字符作为分隔符。 空白字符由
Unicode 标准定义,如果将它们传递给Char.IsWhiteSpace 方法,将返回 true。
separator 的每一个元素都定义一个单独的分隔符字符。 如果两个分隔符相邻,或者在此实例的开头或末尾找到分隔符,则相对应的数组元素包含 Empty。 下表提供了示例:
字符串值 | Separator | 返回的数组 |
---|---|---|
"42, 12, 19" | new Char[] {',', ' '} (C#) Char() = {","c, " "c}) (Visual Basic) | {"42", "", "12", "", "19"} |
"42..12..19" | new Char[] {'.'} (C#) Char() = {"."c} (Visual Basic) | {"42", "", "12", "", "19"} |
"Banana" | new Char[] {'.'} (C#) Char() = {"."c} (Visual Basic) | {"Banana"} |
"Darb\nSmarba" (C#) "Darb" & vbLf & "Smarba" (Visual Basic) | new Char[] {} (C#) Char() = {} (Visual Basic) | {"Darb", "Smarba"} |
"Darb\nSmarba" (C#) "Darb" & vbLf & "Smarba" (Visual Basic) | null (C#) Nothing (Visual Basic) | {"Darb", "Smarba"} |
然后就是那些呆萌呆萌的编程题咯~
为啥我敢在这写……就不怕错了误导大家嘛?哈哈~~ 每道题我都从【等待评判中】一直等到了【完全正确】才写的下一题哦~
嘛,话不多说,这次大概能学到东西的就是继承与实现了(前两道抄答案的题目如果都有人写错我就没话说了哟~)
先给了一个抽象类,里头一个抽象函数,让你写一个公开矩形类继承它,需要构造函数和长宽的Get\Set函数
package Test02; public abstract class Shape { abstract public int getArea(); }这是个抽象类,是个抽象类,因为很重要所以说两次。
抽象类里的东西继承类里你要是不给它写出来,你告诉我你Eclipse老提醒你要加abstract在你的public class前头,
想想看,让你写的就是实现它要不然Shape类里抽象它干啥?
关于Get\Set,Eclipse里有一键添加的快捷键哦~ 不要告诉别人我没提醒你哦~
构造函数,花括号里的东西应该会写吧……
为了方便理解还是贴个代码好了:
package Test02; public class Rectangle extends Shape{ int width; int height; Rectangle(int w,int h){width=w; height=h;} public int getWidth() { return width; } public void setWidth(int width) { this.width = width; } public int getHeight() { return height; } public void setHeight(int height) { this.height = height; } public int getArea() { return width * height; } public static void main(String[] args) { } }
然后是要一个接口的实现类……
当时就懵掉了,啥,接口是啥,实现类又是啥,能吃么?
后来问了大神,啊,关键字implements,然后构造函数是要new一个IList,那就声明一个IList,然后为它new一个写在构造函数里就好啦~
接口如下:
package Test03; public interface IList { void add(Object elem); Object get(int index); int size(); void clear(); }
实现类如下:
package Test03; public class MyList implements IList{ public IList list; MyList(){list = new MyList();} public void add(Object elem) { list.add(elem); } public Object get(int index) { Object obj = list.get(index); return obj; } public int size() { return list.size(); } public void clear() { list.clear(); } public static void main(String[] args) { } }
相关文章推荐
- 【Java多线程学习】Java多线程的两种实现方式:继承Thread类 & 实现Runable接口
- 黑马程序员--Java多线程的两种实现方式:继承Thread类 & 实现Runable接口
- 数据结构之应用 "栈(Stack)" 实现: 解析算术表达式及计算求值 (C#/Java) (转载)
- 用java 实现 oracle的自动备份和恢复功能。
- Sql Server实现C#中Split(new char[]{',','+'...}相仿的SplitEx函数!!
- oracle 实现 split 函数 (返回数组)
- 用Java实现将本机表数据转到Oracle表中
- java之旅(7)隐藏实现 & 复用类
- java 接口 实现和继承关系
- Java中消除实现继承和面向接口编程
- java web 利用 commons-fileupload-1.2 实现文件上传 解决 中文乱码& 非文件属性的读取
- Oracle开发专题之:实现split 函数
- 使用JAVA读取ORACLE BLOB字段实现上传下载
- Java 学习笔记 (3) -抽象类 abstract 接口 interface 内部类 inner class 继承 extends 实现 implements 包 package
- JAVA中如何用接口实现多继承和多态 (非常好)
- JAVA定时器实现之一(通过继承TimerTask)
- java之旅 (四)隐藏实现 & 复用类
- Oracle的clob读取(java实现)
- Ajax - JavaScript之实现私有属性、像C++和Java一样支持基于类的继承方法之例子
- Oracle 存储过程 实现 JAVA中的LIST输入参数