using System;
using System.Collections.Generic;
using System.Text;
namespace test
{
class Program
{
static void Main(string[] args)
{
Date birthday = new Date(, , , new Time(, , ));//传入的第四个参数是对象
Console.WriteLine("我出生于{0}年{1}月{2}日{3}", birthday.year, birthday.month, birthday.day, birthday.clock.To24());//调用第四个对象的方法
}
}
class Time
{
private int hour;
private int minute;
private int second;
private void SetTime(int h, int m, int s)
{
Hour = h;//属性赋值
Minute = m;//属性赋值
Second = s;//属性赋值
}
public Time()//无参构造函数
{
SetTime(, , );
}
public Time(int hourvalue)//一参构造函数
{
SetTime(hourvalue, , );
}
public Time(int hourvalue, int minutevalue, int secondvalue)//三参构造函数
{
SetTime(hourvalue, minutevalue, secondvalue);
}
public int Hour//属性赋值
{
set { hour = (value >= && value <= ? value : ); }
get { return hour; }
}
public int Minute//属性赋值
{
set { minute = (value >= && value <= ? value : ); }
get { return minute; }
}
public int Second//属性赋值
{
set { second = (value >= && value <= ? value : ); }
get { return second; }
}
public string To24()//显示24小时制方法
{
string output = Hour + ":" + Minute + ":" + Second;
return output;
}
public string To12()//显示24小时制方法
{
string output;
if (Hour >= )
{
output = Hour % + ":" + Minute + ":" + Second + "PM";
}
else
{
output = Hour % + ":" + Minute + ":" + Second + "AM";
}
/*下面也是可以的
int HOURTEMP = (Hour == 0 || Hour == 12) ? 00 : (Hour % 12);
string PMAM = (Hour < 12) ? "AM" : "PM";
string output1 = HOURTEMP + ":" + Minute + ":" + Second + PMAM;*/
return output;
}
}
class Date
{
public int year;
public int month;
public int day;
public Time clock;//对象定义为成员
public Date(int yearvalue, int monthvalue, int dayvalue, Time clockvalue)
{
year = yearvalue;
month = monthvalue;
day = dayvalue;
clock = clockvalue;
}
}
}

C#以对象为成员的例子的更多相关文章

  1. java中使用反射做一个工具类,来为指定类中的成员变量进行赋值操作,使用与多个类对象的成员变量的赋值。

    //------------------------------------------------我是代码的分割线 // 首选是一个工具类,在该工具类里面,定义了一个方法,public void s ...

  2. Java 访问限制符 在同一包中或在不同包中:使用类创建对象的权限 & 对象访问成员变量与方法的权限 & 继承的权限 & 深入理解protected权限

    一.实例成员与类成员 1. 当类的字节码被加载到内存, 类中类变量.类方法即被分配了相应内存空间.入口地址(所有对象共享). 2. 当该类创建对象后,类中实例变量被分配内存(不同对象的实例变量互不相同 ...

  3. Python面向对象2:类与对象的成员分析及self

    # 3. 类和对象的成员分析- 类和对象都可以存储成员,成员可以归类所有,也可以归对象所有- 类存储成员时使用的是与类关联的一个对象- 独享存储成员是是存储在当前对象中- 对象访问一个成员时,如果对象 ...

  4. 如何导出标准模板库(STL)类的实例化和包含STL类对象数据成员的类

    本文翻译自 https://support.microsoft.com/zh-cn/help/168958/how-to-export-an-instantiation-of-a-standard-t ...

  5. EL语法 ${person.id} 这里面的id指的是实例对象的成员变量

    EL语法 ${person.id} 这里面的id指的是实例对象的成员变量

  6. c++类 用冒号初始化对象(成员初始化列表)

    c++类 用冒号初始化对象(成员初始化列表) 成员初始化的顺序不同于它们在构造函数初始化列表中的顺序,而与它们在类定义中的顺序相同 #include<iostream> ; using n ...

  7. python的对象的属性(即对象的成员)是动态的

    1 python的对象的成员叫attribute 2 python的类的成员是可以动态创建的 因此,在用的时候也提供了三个内建的接口来对类的成员进行操作 2.1 getattr() 2.2 hasat ...

  8. Java学习日记基础篇(四)——类,对象之成员变量,成员方法,构造方法

    面向对象(Object Oriented) 一.面向对象杂谈 面向对象(Object Oriented),我的翻译是以物体为目标的,就是说编程的时候是建立一个物体,然后对这个物体进行操作. Java语 ...

  9. Java 静态static关键字,main函数,对象的初始化过程,对象调用成员,单例模式的设计,静态代码块(6)

    Java 静态static关键字,静态代码块详情参考:static的使用原理讲解http://www.cnblogs.com/itcqx/p/5519464.html main函数: java Mai ...

随机推荐

  1. 安装完PyCharm,启动时弹出Failed to load JVM DLLbinserverjvm

    安装完PyCharm,启动时弹出"Failed to load JVM DLL\bin\server\jvm.dll"解决方案 问题描述:打开PyCharm时,弹出"Fa ...

  2. Ansible自动化部署入门到进阶笔记

    目录 一.基本部署 安装Ansible Ansible配置文件 定义Inventory 使用秘钥方式连接 使用帮助 Ansible命令应用基础 二.常见模块 三.Ansible playbook 四. ...

  3. CouchDB学习一

    端口 端口号 协议 作用 5984 tcp 标椎集群端口用于所有的HTTP API请求 5986 tcp 用于管理员对节点与分片的管理 4369 tcp Erlang端口到daemon的映射 配置介绍 ...

  4. Tomcat系列(二)- EndPoint源码解析

    在上一节中我们描述了Tomcat的整体架构, 我们知道了Tomcat分为两个大组件,一个连接器和一个容器. 而我们这次要讲的 EndPoint的组件就是属于连接器里面的. 它是一个通信的端点,就是负责 ...

  5. TP5中find_in_set的用法

    TP5.1.22版本 $id=4; Db::name('menu')->where('FIND_IN_SET(:id,pid_all)',['id' => $id])->update ...

  6. More than one file was found with OS independent path 'lib/armeabi-v7a/libgnustl_shared.so'

    More than one file was found with OS independent path 'xxx/xxx' 这个错误是在路径中出现了重复依赖. 解决办法是配置打包选项, 在 and ...

  7. SpringBoot+Redis简单使用

    1.引入依赖 在pom.xml中加入 <dependency> <groupId>org.springframework.boot</groupId> <ar ...

  8. android studio 常见编译问题及解决思路总结

    问题一:编译运行成功后放置一段时间后再运行会报错 这个问题让我纠结了不少时间,最后才发现遇到类似的错误,clear一下project就好了.这个一般是上次生成的临时文件和这次的有冲突造成的. 问题二: ...

  9. Docker入门(四)——MySQL镜像中的数据库可视化

      在详细介绍这篇文章的内容前,需要说明下笔者写这篇文章的意图:笔者在现有的开发中,前后端联调的方式为Docker镜像对接,数据库使用MySQL镜像,开发环境为远程服务器,因此,笔者迫切需要一种能将远 ...

  10. 操作MyBatis引发Error setting null for parameter #X with JdbcType OTHER .无效的列类型

    再用MyBatis操作Oracle的时候,传入null值而引发的错误 异常信息: org.springframework.jdbc.UncategorizedSQLException: Error s ...