Compare commits

...

41 Commits

Author SHA1 Message Date
Maxim Papko 7e652a976c Delete .vs directory 2023-03-31 21:17:36 +03:00
Maxim Papko 15685384a7 Delete Lab2.sln 2023-03-31 21:16:49 +03:00
Maxim Papko e6620839bd Delete Lab2.csproj.user 2023-03-31 21:16:44 +03:00
Maxim Papko f136101a3b Delete Lab2.csproj 2023-03-31 21:16:38 +03:00
Maxim Papko 59fb75ce32 Delete Lab2/obj directory 2023-03-31 21:16:25 +03:00
Maxim Papko b9570d75f8 Delete Lab2/bin/Debug/net6.0 directory 2023-03-31 21:16:07 +03:00
Maxim Papko ae0f85c8d6 Delete Lab2/.vs/Lab2 directory 2023-03-31 21:15:55 +03:00
idkWhatUserNameToUse 96dd638e66 added comment 2023-03-31 21:14:55 +03:00
idkWhatUserNameToUse 61760443a5 added comment 2023-03-31 21:13:42 +03:00
idkWhatUserNameToUse 8b517d136f lab2 with error 2023-03-31 21:10:47 +03:00
idkWhatUserNameToUse 9813f75326 extracted method with adding issue 2023-03-23 21:08:55 +02:00
idkWhatUserNameToUse 8ae3907d24 Merge branch 'ІО-22/20-Папко-Максим' of https://github.com/ASDjonok/OOP_IO-2x_2023 into ІО-22/20-Папко-Максим 2023-03-23 20:55:22 +02:00
idkWhatUserNameToUse a011fc41cf task completed in main method 2023-03-23 20:55:11 +02:00
Maxim Papko 4454d46284 Delete Lab1 directory 2023-03-23 20:40:46 +02:00
idkWhatUserNameToUse 4d70c6a51e Merge branch 'ІО-22/20-Папко-Максим' of https://github.com/ASDjonok/OOP_IO-2x_2023 into ІО-22/20-Папко-Максим 2023-03-23 20:40:02 +02:00
idkWhatUserNameToUse 8db686fac0 determined task 2023-03-23 20:39:53 +02:00
Maxim Papko a48fb7d41f Delete Lab1 directory 2023-03-23 20:37:22 +02:00
idkWhatUserNameToUse 09f2114de6 determined task 2023-03-23 20:35:38 +02:00
Maxim Papko 828dedc3b6 Add files via upload 2023-03-23 20:34:26 +02:00
Maxim Papko 41b6eb063c Delete Program.cs 2023-03-23 20:31:07 +02:00
Maxim Papko bb2c8bd1a0 Add files via upload 2023-03-23 20:30:52 +02:00
idkWhatUserNameToUse 88a618647d a certain option 2023-03-23 20:29:30 +02:00
idkWhatUserNameToUse f4fccadb7b Merge branch 'ІО-22/20-Папко-Максим' of https://github.com/ASDjonok/OOP_IO-2x_2023 into ІО-22/20-Папко-Максим 2023-03-19 16:53:25 +02:00
idkWhatUserNameToUse fb4c2404f7 added empty file 2023-03-19 16:53:05 +02:00
Maxim Papko 86940aa666 Delete Program.cs 2023-03-19 14:09:18 +02:00
Maxim Papko 1e368a1324 Add files via upload 2023-03-19 14:06:41 +02:00
Maxim Papko 559b03336e Delete Program.cs 2023-03-19 13:45:51 +02:00
Maxim Papko 0a7521af40 Delete .gitignore 2023-03-19 13:43:14 +02:00
Maxim Papko 0b51a1a491 Delete OOP_IO-2x_2023.iml 2023-03-19 13:43:08 +02:00
Maxim Papko f54eee595c Add files via upload 2023-03-19 13:42:50 +02:00
Oleksii Aleshchenko 14c58d0cc4 add lab2 2023-03-16 15:58:44 +02:00
Oleksii Aleshchenko afc13cf9f8 add char example for lab1 2023-03-16 15:21:51 +02:00
Oleksii Aleshchenko e910ee6e4d add final way of check division by zero for lab1 2023-03-16 15:07:48 +02:00
Oleksii Aleshchenko 6ab6cc17db add break with label (commented in line 34) and return for lab1 2023-03-16 15:00:12 +02:00
Oleksii Aleshchenko 25173d66d1 add flag "wasDivisionByZero" for lab1 2023-03-16 14:47:04 +02:00
Oleksii Aleshchenko 41ad598b79 add lab1 2023-03-09 16:01:01 +02:00
Oleksii Aleshchenko 13e1a61ad9 update Main with example for difference & and && 2023-03-02 16:07:34 +02:00
Oleksii Aleshchenko f692ae7588 update polymorphism example 2023-03-02 15:48:38 +02:00
Oleksii Aleshchenko 429bcc7b3d add polymorphism example 2023-03-02 15:26:42 +02:00
Oleksii Aleshchenko 4b159fa22b update inheritance example 2023-03-02 14:41:44 +02:00
Oleksii Aleshchenko 2880b770f7 add inheritance example 2023-02-23 16:04:53 +02:00
42 changed files with 686 additions and 13 deletions
-2
View File
@@ -1,2 +0,0 @@
# Project exclude paths
/out/
+32
View File
@@ -0,0 +1,32 @@
using System;
public class Laba2
{
public static void Main(string[] args)
{
const int a = 2;
int[][] b = new[]
{
new int[] { 1, 2, 8 },
new int[] { 3, 4, 5 },
new int[] { 6, 7, 9 }
};
calculation(b, a);
}
private static int[][] calculation(int[][] b, int a)
{
int[][]c = new int[b.Length][b[0].Length]; //недопустимий специфікатор рангу: вимагається "," або "]";
for (int i = 0; i < b.Length; i++)
{
c[i] = new int[b[i].Length];
for (int j = 0; j < b[i].Length; j++)
{
c[i][j] = b[i][j] * a;
}
}
return c;
}
}
-11
View File
@@ -1,11 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>
+61
View File
@@ -0,0 +1,61 @@
using System;
public class Lab1
{
public static void Main(String[] args)
{
/*o1 = +
c3 = 0
o2 = *
c7 = short */
// var A = 4;
// short B = 3;
// var N = 10;
// var M = 10;
//
// var C = 1;
// var s = 0;
//
// bool divisionByZero=false;
Calculation(4, 3, 10, 10, 1, false);
}
public static void Calculation(int A, int C, int N, short B, int M, bool divisionByZero)
{
var s = 0;
if ((A <= -C && -C <= N) || (B <= 0 && 0 <= M))
{
Console.WriteLine("Division by zero!");
return;
}
for (int i = A; i <= N; i++)
{
if (i + C == 0)
{
Console.WriteLine("Division by zero!");
divisionByZero = true;
break;
}
for (short j = B; j <= M; j++)
{
if (j == 0)
{
Console.WriteLine("Оскільки j = 0, то сума просто буде 0");
break;
}
s += (i * j) / (i + C);
}
}
if (!divisionByZero)
{
Console.WriteLine($"s = {s};");
}
}
}
@@ -0,0 +1,10 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net6.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
</Project>
@@ -0,0 +1,25 @@
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.3.32901.215
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "lab1_with_extracted_method", "lab1_with_extracted_method.csproj", "{24A496CD-EC4E-4EBB-AD75-5C0C0EFDC4D8}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{24A496CD-EC4E-4EBB-AD75-5C0C0EFDC4D8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{24A496CD-EC4E-4EBB-AD75-5C0C0EFDC4D8}.Debug|Any CPU.Build.0 = Debug|Any CPU
{24A496CD-EC4E-4EBB-AD75-5C0C0EFDC4D8}.Release|Any CPU.ActiveCfg = Release|Any CPU
{24A496CD-EC4E-4EBB-AD75-5C0C0EFDC4D8}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {BB8782D1-9F42-4685-8447-6B8E6181678C}
EndGlobalSection
EndGlobal
@@ -0,0 +1,4 @@
// <autogenerated />
using System;
using System.Reflection;
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v6.0", FrameworkDisplayName = "")]
@@ -0,0 +1,23 @@
//------------------------------------------------------------------------------
// <auto-generated>
// Этот код создан программой.
// Исполняемая версия:4.0.30319.42000
//
// Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае
// повторной генерации кода.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("lab1_with_extracted_method")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")]
[assembly: System.Reflection.AssemblyProductAttribute("lab1_with_extracted_method")]
[assembly: System.Reflection.AssemblyTitleAttribute("lab1_with_extracted_method")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
// Создано классом WriteCodeFragment MSBuild.
@@ -0,0 +1 @@
b0d331248e7cf508f22410bff3fa4c5190b3e6ab
@@ -0,0 +1,10 @@
is_global = true
build_property.TargetFramework = net6.0
build_property.TargetPlatformMinVersion =
build_property.UsingMicrosoftNETSdkWeb =
build_property.ProjectTypeGuids =
build_property.InvariantGlobalization =
build_property.PlatformNeutralAssembly =
build_property._SupportedPlatformList = Linux,macOS,Windows
build_property.RootNamespace = lab1_with_extracted_method
build_property.ProjectDir = C:\Users\user\source\repos\OOP_IO-2x_2023\lab1_with_extracted_method\
@@ -0,0 +1,8 @@
// <auto-generated/>
global using global::System;
global using global::System.Collections.Generic;
global using global::System.IO;
global using global::System.Linq;
global using global::System.Net.Http;
global using global::System.Threading;
global using global::System.Threading.Tasks;
@@ -0,0 +1,68 @@
{
"format": 1,
"restore": {
"C:\\Users\\user\\source\\repos\\OOP_IO-2x_2023\\lab1_with_extracted_method\\lab1_with_extracted_method.csproj": {}
},
"projects": {
"C:\\Users\\user\\source\\repos\\OOP_IO-2x_2023\\lab1_with_extracted_method\\lab1_with_extracted_method.csproj": {
"version": "1.0.0",
"restore": {
"projectUniqueName": "C:\\Users\\user\\source\\repos\\OOP_IO-2x_2023\\lab1_with_extracted_method\\lab1_with_extracted_method.csproj",
"projectName": "lab1_with_extracted_method",
"projectPath": "C:\\Users\\user\\source\\repos\\OOP_IO-2x_2023\\lab1_with_extracted_method\\lab1_with_extracted_method.csproj",
"packagesPath": "C:\\Users\\user\\.nuget\\packages\\",
"outputPath": "C:\\Users\\user\\source\\repos\\OOP_IO-2x_2023\\lab1_with_extracted_method\\obj\\",
"projectStyle": "PackageReference",
"fallbackFolders": [
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
],
"configFilePaths": [
"C:\\Users\\user\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
"net6.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"C:\\Program Files\\dotnet\\library-packs": {},
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net6.0": {
"targetAlias": "net6.0",
"projectReferences": {}
}
},
"warningProperties": {
"warnAsError": [
"NU1605"
]
}
},
"frameworks": {
"net6.0": {
"targetAlias": "net6.0",
"imports": [
"net461",
"net462",
"net47",
"net471",
"net472",
"net48",
"net481"
],
"assetTargetFallback": true,
"warn": true,
"frameworkReferences": {
"Microsoft.NETCore.App": {
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\6.0.401\\RuntimeIdentifierGraph.json"
}
}
}
}
}
@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<RestoreSuccess Condition=" '$(RestoreSuccess)' == '' ">True</RestoreSuccess>
<RestoreTool Condition=" '$(RestoreTool)' == '' ">NuGet</RestoreTool>
<ProjectAssetsFile Condition=" '$(ProjectAssetsFile)' == '' ">$(MSBuildThisFileDirectory)project.assets.json</ProjectAssetsFile>
<NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">$(UserProfile)\.nuget\packages\</NuGetPackageRoot>
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\user\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages</NuGetPackageFolders>
<NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">6.3.0</NuGetToolVersion>
</PropertyGroup>
<ItemGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<SourceRoot Include="C:\Users\user\.nuget\packages\" />
<SourceRoot Include="C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages\" />
</ItemGroup>
</Project>
@@ -0,0 +1,2 @@
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" />
@@ -0,0 +1,74 @@
{
"version": 3,
"targets": {
"net6.0": {}
},
"libraries": {},
"projectFileDependencyGroups": {
"net6.0": []
},
"packageFolders": {
"C:\\Users\\user\\.nuget\\packages\\": {},
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages": {}
},
"project": {
"version": "1.0.0",
"restore": {
"projectUniqueName": "C:\\Users\\user\\source\\repos\\OOP_IO-2x_2023\\lab1_with_extracted_method\\lab1_with_extracted_method.csproj",
"projectName": "lab1_with_extracted_method",
"projectPath": "C:\\Users\\user\\source\\repos\\OOP_IO-2x_2023\\lab1_with_extracted_method\\lab1_with_extracted_method.csproj",
"packagesPath": "C:\\Users\\user\\.nuget\\packages\\",
"outputPath": "C:\\Users\\user\\source\\repos\\OOP_IO-2x_2023\\lab1_with_extracted_method\\obj\\",
"projectStyle": "PackageReference",
"fallbackFolders": [
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
],
"configFilePaths": [
"C:\\Users\\user\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
"net6.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"C:\\Program Files\\dotnet\\library-packs": {},
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net6.0": {
"targetAlias": "net6.0",
"projectReferences": {}
}
},
"warningProperties": {
"warnAsError": [
"NU1605"
]
}
},
"frameworks": {
"net6.0": {
"targetAlias": "net6.0",
"imports": [
"net461",
"net462",
"net47",
"net471",
"net472",
"net48",
"net481"
],
"assetTargetFallback": true,
"warn": true,
"frameworkReferences": {
"Microsoft.NETCore.App": {
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\6.0.401\\RuntimeIdentifierGraph.json"
}
}
}
}
@@ -0,0 +1,8 @@
{
"version": 2,
"dgSpecHash": "VANdgElQYYOqAx91vfx9p1GWZX21FI7KRMpKYjMOBS/jaQDmnFh4D1hrZpo4+AA4DT9ZmEVXEUNcGLuCaXreTA==",
"success": true,
"projectFilePath": "C:\\Users\\user\\source\\repos\\OOP_IO-2x_2023\\lab1_with_extracted_method\\lab1_with_extracted_method.csproj",
"expectedPackageFiles": [],
"logs": []
}
+52
View File
@@ -0,0 +1,52 @@
using System;
public class Lab1
{
public static void Main(String[] args)
{
/*o1 = +
c3 = 0
o2 = *
c7 = short */
var A = 4;
short B = 3;
var N = 10;
var M = 10;
var C = 1;
var s = 0;
bool divisionByZero=false;
if ((A <= -C && -C <= N) || (B <= 0 && 0 <= M))
{
Console.WriteLine("Division by zero!");
return;
}
for (int i = A; i <= N; i++)
{
if (i + C == 0) {
Console.WriteLine("Division by zero!");
divisionByZero = true;
break;
}
for (short j = B; j <= M; j++)
{
if (j == 0) {
Console.WriteLine("Оскільки j = 0, то сума просто буде 0");
break;
}
s += (i * j) / (i + C);
}
}
if (!divisionByZero)
{
Console.WriteLine($"s = {s};" );
}
}
}
+58
View File
@@ -0,0 +1,58 @@
public class Lab1 {
public static void main(String[] args) {
// char c = 'a' + '1';
char c = 97;
// char c = '1';
System.out.println(c);
System.out.println((int) c);
c++;
System.out.println(c);
System.out.println((int) c);
System.out.println((double)'1'/'3');
// System.out.println( (double) 0 / 0 );
// System.out.println( Math.sqrt(-1) );
double s = 0;
/*for (int i = 1; i <= 3; i++) { // 1) i = 1, 2) <= 3, 3) 䳿 ,
System.out.println(i); // 4) 1, 5) 2
// s = s + i;
s += i;
}*/
/*int[] array = new int[2];
for (int i = 0; i < array.length; i++) {
}*/
final int A = -3;
final int B = 0;
final int N = 2;
final int M = 2;
final int C = 1;
// boolean wasDivisionByZero = false;
// todo char
// todo[clear code] think about avoiding brackets
if ((A <= -C && -C <= N) || (B <= 0 && 0 <= M)) {
System.out.println("Division by zero!");
return;
}
/*myLabel:*/for (int i = A; i <= N /*&& !wasDivisionByZero*/; i++) {
/*if (i + C == 0) { // todo optimize
System.out.println("Division by zero!");
wasDivisionByZero = true;
break; //todo flag vs return;
}*/
for (int j = B; j <= M; j++) {
/*if (j == 0) {
System.out.println("Division by zero!");
return;
// wasDivisionByZero = true;
// break myLabel;
}*/
s += (double) (i / j) / (i + C);
}
}
// if (!wasDivisionByZero) {
System.out.println("s = " + s);
// }
}
}
+26
View File
@@ -0,0 +1,26 @@
public class Lab2 {
public static void main(String[] args) {
int[] array = {1, 2, 3};
/*for (int i = 0; i < array.length; i++) {
if (i % 2 == 0) {
System.out.println("!" + array[i]);
} else {
System.out.println("?" + array[i]);
}
}*/
for (int i = 0; i < array.length; i+=2) {
System.out.println("!" + array[i]);
}
for (int i = 1; i < array.length; i+=2) {
System.out.println("?" + array[i]);
}
// зубчасті матриці
int[][] matrix = {
{1, 2},
{3}
};
}
}
+27
View File
@@ -3,6 +3,33 @@ public class Main {
System.out.println(args[2]); System.out.println(args[2]);
System.out.println("Hello world!"); System.out.println("Hello world!");
// System.out.println(1); // System.out.println(1);
int a = 1;
int b = 2;
int c = 1;
int d = 1;
System.out.println(2&1);
System.out.println(2|1);
int aa = 2;
/*if (aa) {
}*/
// System.out.println("a"&"b");
System.out.println('a'&'b');
if ((a > b) & MyBooleanMethod()) {
System.out.println("?????????????????????????");
}
}
static boolean MyBooleanMethod() {
System.out.println("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
return true;
} }
void myFunction() { void myFunction() {
@@ -0,0 +1,9 @@
package encapsulationInheritancePolymorphism.inheritance;
public class ElectricEngine extends Engine {
private String batteryType;
/*private class Engine {
private int power;
}*/
}
@@ -0,0 +1,5 @@
package encapsulationInheritancePolymorphism.inheritance;
public class Engine {
private int power;
}
@@ -0,0 +1,5 @@
package encapsulationInheritancePolymorphism.inheritance;
public class FuelEngine extends Engine {
private String fuelType;
}
@@ -0,0 +1,8 @@
package encapsulationInheritancePolymorphism.inheritance;
public class Main {
public static void main(String[] args) {
ElectricEngine electricEngine = new ElectricEngine(); // створення нового об'єкту (екземпляру) класу ElectricEngine
FuelEngine fuelEngine = new FuelEngine();
}
}
@@ -0,0 +1,14 @@
package encapsulationInheritancePolymorphism.polymorphism;
public class ElectricEngine extends Engine {
private String batteryType;
@Override
public int getPower() {
return 20;
}
/*private class Engine {
private int power;
}*/
}
@@ -0,0 +1,9 @@
package encapsulationInheritancePolymorphism.polymorphism;
public class Engine {
private int power;
public int getPower() {
return power;
}
}
@@ -0,0 +1,10 @@
package encapsulationInheritancePolymorphism.polymorphism;
public class FuelEngine extends Engine {
private String fuelType;
@Override
public int getPower() {
return 50;
}
}
@@ -0,0 +1,38 @@
package encapsulationInheritancePolymorphism.polymorphism;
/*import encapsulationInheritancePolymorphism.inheritance.ElectricEngine;
import encapsulationInheritancePolymorphism.inheritance.FuelEngine;*/
public class Main {
public static void main(String[] args) {
/*encapsulationInheritancePolymorphism.inheritance.*/ElectricEngine electricEngine = new ElectricEngine(); // створення нового об'єкту (екземпляру) класу ElectricEngine
/*encapsulationInheritancePolymorphism.inheritance.*/FuelEngine fuelEngine = new FuelEngine();
Engine engine1 = fuelEngine;
Engine[] engines = {
electricEngine,
fuelEngine
};
for (Engine engine : engines) {
System.out.println(engine.getPower());
}
/*for (int i = 0; i < engines.length; i++) {
System.out.println(engines[i].getPower());
}*/
// +
int a = 1;
int b = 1;
int c = a + b;
System.out.println(c);
String sA = "1";
String sB = "1";
String sC = sA + sB;
System.out.println(sC);
}
}
@@ -0,0 +1,19 @@
package encapsulationInheritancePolymorphism.polymorphism.enhanced;
public class ElectricEngine extends Engine {
private String batteryType;
private int chargeLevel = 9;
private int criticalChargeLevel = 10;
private float coefficientCriticalPowerCut = 0.1f;
@Override
public int getPower() {
return chargeLevel > criticalChargeLevel
? super.getPower()
: (int) (super.getPower() * coefficientCriticalPowerCut);
}
/*private class Engine {
private int power;
}*/
}
@@ -0,0 +1,9 @@
package encapsulationInheritancePolymorphism.polymorphism.enhanced;
public class Engine {
private int power = 100;
public int getPower() {
return power;
}
}
@@ -0,0 +1,10 @@
package encapsulationInheritancePolymorphism.polymorphism.enhanced;
public class FuelEngine extends Engine {
private String fuelType;
/*public int getPower() {
return 50;
}*/
}
@@ -0,0 +1,28 @@
package encapsulationInheritancePolymorphism.polymorphism.enhanced;
/*import encapsulationInheritancePolymorphism.inheritance.ElectricEngine;
import encapsulationInheritancePolymorphism.inheritance.FuelEngine;*/
public class Main {
public static void main(String[] args) {
/*encapsulationInheritancePolymorphism.inheritance.*/
ElectricEngine electricEngine = new ElectricEngine(); // створення нового об'єкту (екземпляру) класу ElectricEngine
/*encapsulationInheritancePolymorphism.inheritance.*/
FuelEngine fuelEngine = new FuelEngine();
Engine engine1 = fuelEngine;
Engine[] engines = {
electricEngine,
fuelEngine
};
for (Engine engine : engines) {
System.out.println(engine.getPower());
}
/*for (int i = 0; i < engines.length; i++) {
System.out.println(engines[i].getPower());
}*/
}
}
@@ -0,0 +1,17 @@
package encapsulationInheritancePolymorphism.polymorphism.overload;
public class MyClassForOverloadExample {
void myMethod(int a) {
System.out.println("Integer: " + a);
}
void myMethod(double a) {
System.out.println("Double: " + a);
}
public static void main(String[] args) {
MyClassForOverloadExample overload = new MyClassForOverloadExample();
overload.myMethod(1);
overload.myMethod(0.1);
}
}