瑞星卡卡安全论坛技术交流区系统软件 【原创】从机理欣赏语言 JAVA篇 1

1   1  /  1  页   跳转

【原创】从机理欣赏语言 JAVA篇 1

【原创】从机理欣赏语言 JAVA篇 1

在JAVA面向对象的设计中,有一个相当重要的概念,那就是引用。什么是引用呢?引用实际上就是把一个标识符绑定给一个对象。

[补充]在C++中,引用和指针有什么区别?
在C++中,引用是直接使用数据的,而指针则是间接使用数据

从JAVA的语法,引用是JAVA的面向对象属性的具体表现。如果需要使用一个引用,我们要做的是声明引用和分配空间。例如,
Character C=new Character(‘x’);
起初我对此种用法感觉到莫名,也不太习惯。原以为是因为和C\C++不同,实际上并非如此,而是我并不理解JAVA的文化。
例如,首先初始化了两个引用
Character C1=new Character(‘x’);
Character C2=new Character(‘y’);
然后执行
C1=C2;
其实以上语句做的事情,将C2引用赋值给C1引用。虽然输出C1和C2都是输出一个y,但是进行的操作并非字符的复制,而是引用的复制。

现在定义了这样一个类
class Point
{
    Point()
    {
        x=0;
        y=0;
    }
    int x;
    int y;
}
又如,在使用的时候就很容易犯这样的错误,
public class Example
{
    private Point pt1;
    public static void main(String args[])
    {
        pt1=    new Point();
    }
};
如果编译这样的代码,一定会出错。为什么呢?JAVA对类的分静态与非静态元素处理是不同的。静态元素是存在于对象建立之前,非静态元素则只存在于对象建立以后。这也是JAVA的一大特点。因此对此段代码的修改,有三种方法:
一是实例化Example类
public class Example
{
    private static Point pt1;
    public static void main(String args[])
    {
        pt1=    new Point();
    }
};
二是把pt1定为静态数据
public class Example
{
    private Point pt1;
    public static void main(String args[])
    {
        Example ex=new ex();
        ex.pt1=    new Point();
    }
};
三是将pt1作为main函数中的变量
public class Example
{
    public static void main(String args[])
    {
        Point pt1 =new Point();
    }
};
最后编辑2007-02-26 17:41:02.327000000
分享到:
gototop
 

你能不能讲一下ASP语言和VB语言呀
gototop
 

引用:
【封神梦想的贴子】你能不能讲一下ASP语言和VB语言呀
………………

ASP虽然是我大学学的第一门语言,只是用它为学校做过几个网站,但是我对它不大熟悉。
VB嘛,完全没学过

我只学过C\C++,现在正在学JAVA和汇编。
gototop
 

期待 奇才 的 C# 部分
gototop
 

引用:
【endurer的贴子】期待 奇才 的 C# 部分
………………

呵呵,在跨平台设计方面,我还是新手呢,刚学没多久,还要你们多多指教。
gototop
 
1   1  /  1  页   跳转
页面顶部
Powered by Discuz!NT