一、抽象类
一种内部包含抽象方法的类,包含抽象方法的类必须被定义为抽象类,抽象方法不需要被定义。
abstract是关键字
public abstract class Welcom {
abstract public void cout();
public static void main(String[] args) {
sc a=new sc();
a.cout();
}
}
class sc extends Welcom
{
public void cout() {
System.out.println("666");
}
}
输出:666
二、接口
一种内部只含有抽象方法类,可以多继承
关键词 interface 声明接口
implement 调用接口
extends 接口之间的继承
public abstract class Welcom {
public static void main(String[] args) {
test a=new test();
a.cout1();
a.cout2();
a.cout4();
}
}
interface A{
void cout1();
void cout2();
}
interface B{
void cout3();
void cout4();
}
interface C extends A,B{
}
class test implements C{
public void cout1() {
System.out.println("1");
}
public void cout2() {
System.out.println("2");
}
public void cout3() {
System.out.println("3");
}
public void cout4() {
System.out.println("4");
}
}
输出:1 2 4
三、内部类和静态内部类
(1)内部类
public abstract class Welcom {
public static void main(String[] args) {
cin.cout b=new cin().new cout();
cin c=new cin();
System.out.println(b.a);
System.out.println(c.a);
}
}
class cin{
int a=10;
class cout{
int a=20;
}
}
(2)静态内部类
public abstract class Welcom {
public static void main(String[] args) {
cin.cout b=new cin.cout();
cin c=new cin();
System.out.println(b.a);
System.out.println(c.a);
}
}
class cin{
int a=10;
static class cout{
int a=20;
}
}
四、String
基本用法与C++中STL容器的string区别不大,多了一些其他的用法
public abstract class Welcom {
public static void main(String[] args) {
String s1="abc"+"def";
String s2="Abcdef";
System.out.println(s1.equals(s2));//判断两字符是否相同
System.out.println(s1.equalsIgnoreCase(s2) );//无视大小写判断两字符是否相同
System.out.println(s1.charAt(0));//返回字符串中第一个元素
System.out.println(s1.indexOf("bc"));//寻找字符串中是否有"bc"
}
}
输出:
false
true
a
1
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)