using System;
public class Device
{
internal string name;
public string Name
{
get { return name; }
}
private Device( )
{
}
static internal Device NewDevice( )
{
return new Device( ) ;
}
}
public class DeviceManager
{
public static Device OpenDevice( )
{
Device d = Device.NewDevice ( ) ;
d.name = "my friend!" ;
return d;
}
}
public class Test
{
public static void Main( )
{
// your code goes here
Device d = DeviceManager.OpenDevice ( ) ;
Console.WriteLine ( d.Name ) ;
d = new Device( ) ;
}
}
dXNpbmcgU3lzdGVtOwoKcHVibGljIGNsYXNzIERldmljZQp7CglpbnRlcm5hbCBzdHJpbmcgbmFtZTsKICAgIHB1YmxpYyBzdHJpbmcgTmFtZSAKICAgIHsKICAgIAlnZXQgeyByZXR1cm4gbmFtZTt9CiAgICB9CiAgICAKICAgIHByaXZhdGUgRGV2aWNlKCkKICAgIHsKICAgIH0KICAgIAogICAgc3RhdGljIGludGVybmFsIERldmljZSBOZXdEZXZpY2UoKQogICAgewogICAgCXJldHVybiBuZXcgRGV2aWNlKCk7CiAgICB9Cn0KCnB1YmxpYyBjbGFzcyBEZXZpY2VNYW5hZ2VyCnsKCXB1YmxpYyBzdGF0aWMgRGV2aWNlIE9wZW5EZXZpY2UoKQoJewoJCURldmljZSBkID0gRGV2aWNlLk5ld0RldmljZSgpOwoJCWQubmFtZSA9ICJteSBmcmllbmQhIjsKCQlyZXR1cm4gZDsKCX0KfQoKcHVibGljIGNsYXNzIFRlc3QKewoJCgkKCXB1YmxpYyBzdGF0aWMgdm9pZCBNYWluKCkKCXsKCQkvLyB5b3VyIGNvZGUgZ29lcyBoZXJlCgkJRGV2aWNlIGQgPSBEZXZpY2VNYW5hZ2VyLk9wZW5EZXZpY2UoKTsKCQlDb25zb2xlLldyaXRlTGluZShkLk5hbWUpOwoJCWQgPSBuZXcgRGV2aWNlKCk7Cgl9Cn0=
compilation info
prog.cs(40,7): error CS0122: `Device.Device()' is inaccessible due to its protection level
prog.cs(11,13): (Location of the symbol related to previous error)
Compilation failed: 1 error(s), 0 warnings
stdout