找回密码
 FreeOZ用户注册
查看: 1879|回复: 4
打印 上一主题 下一主题

[论坛技术] 有什么地方具体讲解 public private static partial namespace 这些概念么?

[复制链接]
跳转到指定楼层
1#
发表于 21-4-2010 12:16:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
提示: 作者被禁止或删除, 无法发言

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?FreeOZ用户注册

x
谢谢,我对于这些概念马马虎虎,想找一片详细讲解这些概念的距离文章,有朋友可以给一个链接么?
回复  

使用道具 举报

2#
 楼主| 发表于 21-4-2010 12:58:57 | 只看该作者

Public;Private;static;private Static;Public Static详解

提示: 作者被禁止或删除, 无法发言
由于没有机会学着写大型的项目,也就很少详细分析Publicrivate;static;private Staticublic Static的使用方法。今天突然用到,脑袋顿时一片空白。经过两小时的查找资料,获得以下内容,特意贴出来,望对年轻的朋友有一定的帮助,也欢迎高手指出我的错误或遗漏。

Public:公有的。作用:用来声明公有变量或方法。即在声明该变量或方法的类以外可以引用的。

Private:私有的,作用:用来声明内部私有变量或方法。即在声明该变量或方法的类以外不可引用的。

Static:静态的,作用:用来声明使用该类直接调用的变量或方法。直接用该关键字(加Public)后,无需实例化对象(注意:C#中规定静态变量只能通过类来获得。),就可在外部引用变量或方法。


下面使用示例解释:

public class GetTime
{
     public string Time()
    {
        return System.DateTime.Now.ToLongDateString();
    }
    private string Time1()
    {
        return System.DateTime.Now.ToLongDateString();
    }
    public static string Time2()
    {
        return System.DateTime.Now.ToLongDateString();
    }
}

以上三个方法均返回当前时间,我们来看看这三个方法有什么不同,在C#中,New关键字大家不少用,首先假设在另一个类中引用这个类。

public class Tsting
{
    GetTime N_GetTime=new GetTime();
    string time=N_GetTime.Time();//在这里可以访问到GetTime的一个方法,就是Public;而其它两个类均不能访问。而要访问Time2.则只需只样写即可。
    sting time2=GetTime.Time2();
    //使用Private关键字声明的Time1()是不可以在外部访问的。
}

使用Static与不使用还有一个本质的差别,即:当声明一个变量时,如果它的本身值是0,赋值一百后,如果使用了Static的,那么访问的时候它会是100,而不使用该关键字便是0。

(若有高手发现有错误,请帮忙!)
回复  

使用道具 举报

3#
发表于 21-4-2010 23:22:25 | 只看该作者
《thinking in JAVA》里面有介绍,你的例子了用static就好,没必要为了调用里面的public方法而创建实例
回复  

使用道具 举报

4#
发表于 22-4-2010 00:56:19 | 只看该作者
原帖由 xblues 于 21-4-2010 11:58 发表
由于没有机会学着写大型的项目,也就很少详细分析Publicrivate;static;private Staticublic Static的使用方法。今天突然用到,脑袋顿时一片空白。经过两小时的查找资料,获得以下内容,特意贴出来,望对年轻的朋 ...

"使用Static与不使用还有一个本质的差别,即:当声明一个变量时,如果它的本身值是0,赋值一百后,如果使用了Static的,那么访问的时候它会是100,而不使用该关键字便是0。"
这东西相当于全局变量,内存中划一个区域给它。大家一起用,全局只一个。所以一般这东西用来表示常量,比如圆周率=3。1416。等。
你的编码经验要加强,有项目锻炼的话这样的感念你会记得比较深刻。
另外比较同意3楼的说法。JAVA是理解面向对象的语言的最好工具,比C或者C++要更好一些(不是C/C++不好,是说在面向对象特性方面JAVA更容易理解)。
面向对象的概念,你说的这些是比较重要基础的概念。
封装,继承。

[ 本帖最后由 ma.qy 于 21-4-2010 23:59 编辑 ]
回复  

使用道具 举报

5#
发表于 22-4-2010 09:51:11 | 只看该作者
一般程序员面试都会碰到的问题
回复  

使用道具 举报

您需要登录后才可以回帖 登录 | FreeOZ用户注册

本版积分规则

小黑屋|手机版|Archiver|FreeOZ论坛

GMT+11, 5-3-2025 09:40 , Processed in 0.017226 second(s), 20 queries , Gzip On, Redis On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表