C#学习笔记(二)简单的C#类问题

01:在C#中,string str = null 与 string str = “”的区别
String str=null 这句话的意思就是定义一个字符串,变量str,字符串的内容为空值。

String str=“” 定义一个String类型的变量str,并为其赋值。
(1)""分配了内存;null没有分配内存。

(2)""是一个字符串(String).它在内存中是存在的.而null它是一个空对象.在内存中是不存在的。

(3)""占内存,在内存中会分配一个空间。 null不占内存. 为空引用.

String str1= null; str引用为空String str2= “”; str应用一个空字符串也就是null没有分配空间,"“分配了空间,因此str1还不是一个实例化的对象,而str2已经实例化。注意null不是对象,”"是对象。总结: null表示的是一个对象的值,而并不是一个字符串。例如声明一个对象的引用,String a = null ; “”表示的是一个空字符串,也就是说它的长度为0。例如声明一个字符串String str = “” ;

内存分配 String str= null ; 表示声明一个字符串对象的引用,但指向为null,也就是说还没有指向任何的内存空间; String str= “”; 表示声明一个字符串类型的引用,其值为”“空字符串,这个str引用指向的是空字符串的内存空间;

02:简述类和结构的相同点和不同点。
结构:
(1).结构可以不通过new操作符来实例化;
(2).结构在使用之前必须进行数据初始化;
(3).结构不可以定义无参构造函数;
(4).结构定义有参的构造函数,必须在构造函数对字段进行初始化;
(5).结构不可以继承,也不可以被继承,但可以实现接口;
(6).结构是值类型;

using System;
using System.Text;
     
struct Books
{
   
   private string title;
   private string author;
   private string subject;
   private int book_id;
   public void getValues(string t, string a, string s, int id)
   {
   
      title = t;
      author = a;
      subject = s;
      book_id =id; 
   }
   public void display()
   {
   
      Console.WriteLine("Title : {0}", title);
      Console.WriteLine("Author : {0}", author);
      Console.WriteLine("Subject : {0}", subject);
      Console.WriteLine("Book_id :{0}", book_id);
   }

};  
public class testStructure
{
   
   public static void Main(string[] args)
   {
   

      Books Book1;        /* 声明 Book1,类型为 Book */
      Books Book2;        /* 声明 Book2,类型为 Book */

      /* book 1 详述 */
      Book1.title = "C Programming";
      Book1.author = "Nuha Ali"; 
      Book1.subject = "C Programming Tutorial";
      Book1.book_id = 6495407;

      /* book 2 详述 */
      Book2.title = "Telecom Billing";
      Book2.author = "Zara Ali";
      Book2.subject =  "Telecom Billing Tutorial";
      Book2.book_id = 6495700;

      /* 打印 Book1 信息 */
      Console.WriteLine( "Book 1 title : {0}", Book1.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值