A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 丁慧 初级黑马   /  2012-8-8 15:32  /  2116 人查看  /  7 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

tb_dictionary tbDicty = new tb_dictionary();   
OleDbCommand oledcmd = null;
请教一下大家,什么时候实例化用第一个方式,什么时候是直接对它进行赋值的,还是都可以???

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

7 个回复

倒序浏览
当在某个类例如China类中定义个字段叫city ,  public string  city=" "; 若想调用字段city时,这时候就必须实例化对象了, China c=new China();   c.city="Hong Kong";

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
许庭洲 发表于 2012-8-8 16:02
当在某个类例如China类中定义个字段叫city ,  public string  city=" "; 若想调用字段city时,这时候就必须 ...

我们编写的类,使用时要实例化,那vs中自带的呢?
回复 使用道具 举报
本帖最后由 许庭洲 于 2012-8-8 17:07 编辑

VS中自带的都是老外打包封装好了的,最好别修改,否则在以后的开发中会出现项目开发出现麻烦!

举一个VS中自动生成某个字段的属性,很神奇吧!
可以在Visual Studio c#开发环境下,将光标放在声明中要封装的字段的名称上,点鼠标右键,选择封装字段,即可自动生成该字段的属性。
例如:将光标放在单词 age 上:public int age, sex;  还可以右击光标,指向“重构”,然后单击“封装字段”以显示“封装字段”对话框。
         VS自动生成以下代码:
          public int Age  //VS自动将age中首字母a转化为大写的A
         {
              get
              {
                     return age;
              }
              set
              {
                     age= value;
              }
}//希望对你有帮助!

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
实例化时候的那个new用于创建对象和调用构造函数。这就是它的用途了。如果不是实例化时候调用的new那是有其它含义的。比如可以用于向基类成员隐藏继承成员。iint,float,char等等是预定义的值类型,存放于堆栈中。string虽然是预定义的引用类型,存放于堆中。C#为了使语义遵循一般的,直观的字符串规则,对字符串的运算符(如"+"运算符)进行了重载。总结一下。值类型存放于堆栈,不用实例化。引用类型存放于堆,需要用new运算符实例化。为什么string不用实例化呢。其实string是披着羊皮的狼。由于作了特殊处理,string s="黑马";这条语句编译器会认为是与string s=new string("黑马")等效的。

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
补充说下:只要是没有加static的方法或者属性都必须先实例化再通过实例名.方法名或实例名.属性来访问
加static的方法或者属性可以直接通过类名.方法名或者类名.属性来访问

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
在面向对象的编程中,通常把用类创建对象的过程称为实例化,其格式如下:   类名 对象名 = new 类名(参数1,参数2...参数n)   (这里,“类名”这个类名实例化成了“对象名”这个对象)   如 Date date=new Date();就是用日期类创建了一个日期的对象,就叫对象的实例化。   多数语言中,实例化一个对象 其实就是在内存中开放一个空间 用于存储新的产物,即对象。   例如一个类class A{   .....   }   A a=new A();

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
简单的区别就是看有没有static作为访问修饰符,在一个类中的方法一有static修饰,则可以类名.方法一直接调用方法,有时要注意看引用了没;如果没有static修饰,就得先实例化,然后在调用;
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马