当前位置: 技术问答>java相关
歪脚鸭java学习之经典旅程————————————第一问
来源: 互联网 发布时间:2015-10-11
本文导语: 1.接口的原理?及和类继承的本质区别? 2。在java语言中如何取得本地机的绝对路径。如:myImage=getImage("D:\Documents and Settings\Administrator\My Documents","cctv2.jpg"); 该方法为什么不能得到图片?注:cctv2和java程序不在同一...
1.接口的原理?及和类继承的本质区别?
2。在java语言中如何取得本地机的绝对路径。如:myImage=getImage("D:\Documents and Settings\Administrator\My Documents","cctv2.jpg");
该方法为什么不能得到图片?注:cctv2和java程序不在同一路径。
3。import java.applet.Applet;
import java.awt.*;
public class AccessControl extends Applet
{
ClassBeAccessed c=new ClassBeAccessed();
subClass sc=new subClass();
PackageClass ic=new PackageClass();
public void paint(Graphics g)
{
g.drawString("Slef Accessibla:",10,20);
g.drawString(c.toString(),20,35);
g.drawString("Sub Accessibla:",10,55);
g.drawString(sc.AccessDirectly(),20,70);
g.drawString("Package Accessibla:",10,90);
g.drawString(ic.AccessDirectly(),20,105);
g.drawString("Access using public method:",10,125);
g.drawString(sc.AccessCls(),20,140);
g.drawString(ic.AccessCls(),20,155);
}
}
class ClassBeAccessed
{
public String m_PublicProperty;
String m_FriendlyProperty;
protected String m_ProtecetedProperty;
private String m_PrivateProperty;
private protected String m_PPProperty; //这里为什么出错
ClassBeAccessed()
{
m_PublicProperty=new String("Public");
m_FriendlyProperty=new String("Friendly");
m_ProtecetedProperty=new String("Protected");
m_PrivateProperty=new String("Private");
m_PPProperty=new String("Private protected");
}
public String toString()
{
return (m_PublicProperty+";"
+m_FriendlyProperty+";"
+m_ProtecetedProperty+";"
+m_PrivateProperty+";"
+m_PPProperty+";");
}
}
class subClass extends ClassBeAccessed
{
ClassBeAccessed c=new ClassBeAccessed();
String AccessDirectly()
{
return (c.m_PublicProperty+";" +c.m_FriendlyProperty+";"
+c.m_ProtecetedProperty+";"
+m_PPProperty+";");
}
String AccessCls()
{
return (c.toString());
}
}
class PackageClass
{
ClassBeAccessed c=new ClassBeAccessed();
String AccessDirectly()
{
return (c.m_PublicProperty+";" +c.m_FriendlyProperty+";" +c.m_ProtecetedProperty+";");
}
String AccessCls()
{
return (c.toString());
}
}
2。在java语言中如何取得本地机的绝对路径。如:myImage=getImage("D:\Documents and Settings\Administrator\My Documents","cctv2.jpg");
该方法为什么不能得到图片?注:cctv2和java程序不在同一路径。
3。import java.applet.Applet;
import java.awt.*;
public class AccessControl extends Applet
{
ClassBeAccessed c=new ClassBeAccessed();
subClass sc=new subClass();
PackageClass ic=new PackageClass();
public void paint(Graphics g)
{
g.drawString("Slef Accessibla:",10,20);
g.drawString(c.toString(),20,35);
g.drawString("Sub Accessibla:",10,55);
g.drawString(sc.AccessDirectly(),20,70);
g.drawString("Package Accessibla:",10,90);
g.drawString(ic.AccessDirectly(),20,105);
g.drawString("Access using public method:",10,125);
g.drawString(sc.AccessCls(),20,140);
g.drawString(ic.AccessCls(),20,155);
}
}
class ClassBeAccessed
{
public String m_PublicProperty;
String m_FriendlyProperty;
protected String m_ProtecetedProperty;
private String m_PrivateProperty;
private protected String m_PPProperty; //这里为什么出错
ClassBeAccessed()
{
m_PublicProperty=new String("Public");
m_FriendlyProperty=new String("Friendly");
m_ProtecetedProperty=new String("Protected");
m_PrivateProperty=new String("Private");
m_PPProperty=new String("Private protected");
}
public String toString()
{
return (m_PublicProperty+";"
+m_FriendlyProperty+";"
+m_ProtecetedProperty+";"
+m_PrivateProperty+";"
+m_PPProperty+";");
}
}
class subClass extends ClassBeAccessed
{
ClassBeAccessed c=new ClassBeAccessed();
String AccessDirectly()
{
return (c.m_PublicProperty+";" +c.m_FriendlyProperty+";"
+c.m_ProtecetedProperty+";"
+m_PPProperty+";");
}
String AccessCls()
{
return (c.toString());
}
}
class PackageClass
{
ClassBeAccessed c=new ClassBeAccessed();
String AccessDirectly()
{
return (c.m_PublicProperty+";" +c.m_FriendlyProperty+";" +c.m_ProtecetedProperty+";");
}
String AccessCls()
{
return (c.toString());
}
}
|
接口主要是用来规范子类
比如我写的框家,我开发一个接口,接口有两个函数
然后叫你写模块,我告诉你第一个该实现什么功能,第二个是什么功能。
你写好之后,我不用关心你写的类是继承什么只要你继承了我这个接口,我就可以用该接口把你的类转成这个类型,又或者是动态加载。
因为我是用这个接口强制转化的,所以即使其他public方法都不能访问,但只要这两个方法能访问,并能实现其中功能,那就够了
比如我写的框家,我开发一个接口,接口有两个函数
然后叫你写模块,我告诉你第一个该实现什么功能,第二个是什么功能。
你写好之后,我不用关心你写的类是继承什么只要你继承了我这个接口,我就可以用该接口把你的类转成这个类型,又或者是动态加载。
因为我是用这个接口强制转化的,所以即使其他public方法都不能访问,但只要这两个方法能访问,并能实现其中功能,那就够了
|
protected 就是保护控制符,没有私有保护控制符
private
private