`
百合不是茶
  • 浏览: 344674 次
社区版块
存档分类
最新评论
阅读更多

/*
   * 栈(stack):主要保存基本类型(或者叫内置类型)(char、byte、short、
   *int、long、 float、double、boolean)和对象的引用,数据可以共享,速度仅次于
   * 寄存器(register),快于堆。堆(heap):用于存储对象。
   */
  
  /*
   * str1和str2会是true,因为他们就是同一个abc,在java中String str2 = "abc";
   * 会先在常量池中找,没有就创建常量池对象,所以str1=str2为true
   */

  String str1 = "abc";
  String str2 = "abc";
  System.out.println(str1 == str2);

 
 
     

   String str ="";//在常量池中创建常量池对象
  String strs = new String(); //堆中创建对象
  System.out.println(str == strs); //false

 

  
  // 1,String str= new String("abc");创建了几个对象
  String demoStr = new String("abc");

 
  大概是 由于"abc"已经被创建并保存于字符串池中,因此JAVA虚拟机只会在堆中新创建一个String对象,但是它的值(value)是共享前一行代码执行时在栈中创建的三个char型值值'a'、'b'和'c'

 

 

 

2, ---------------------------------接口可以继承接口;

 

接口DemoA;

public interface DemoA {
    int a= 10;
    public void add(int x,int y);
}

 接口DemoB继承DemoA

public interface DemoB extends DemoA{

	public void addDemo(int y);
}

 

类实现接口DemoB

public class DemoTest implements DemoB {
	// 实现接口DemoB需要重载接口DemoB的方法,接口DemoB继承的DemoA 
	//所以也实现了DemoA中的方法
	public static void main(String[] args) {

	}

	// 重写接口的方法
	@Override
	public void add(int x, int y) {
		// TODO Auto-generated method stub

	}

	@Override
	public void addDemo(int y) {
		// TODO Auto-generated method stub

	}

 

 

 

 3-------------- 抽象可以实现接口

抽象类实现接口不需要重写接口中的方法,抽象类中可以定义方法和具体方法,接口只能是定义方法

抽象类DemoAb实现DemoB,不需要重写DemoB接口中的方法

public abstract class DemoAb implements DemoB{
	
		 
}

 

 

4-------抽象类是否可以继承实体类

 

 

 

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics